[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

A bunch of lousy ideas



There is already enough of extending functions by adding extra
arguments.  ROUND that does division if you give it an extra argument,
etc.  I know this all sounds clever, and it even looks harmless when you
first see it, since the old function does continue to work.  But I think
it is a lousy idea to make ROUND do division, to make SIGN do whatever
it is that we agreed it would do, and to make EVENP do mod.  This sounds
too much like the classic kludges of the following sort:

(IO-OP FOO-FLAG [COUNT])
  if FOO-FLAG is true, this prints its argument
  if FOO-FLAG is false, it rewinds the nearest magtape the 
	number of frames specified by the argument COUNT
    except if COUNT is non-numeric it is the name of the tape
	drive, and the number of frames to be rewound will be
	found in the global variable *FRAMES*

I think we are better off having a one to one mapping between conceptual
functions and names.
   --------