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

Re: Argument lists



	
    Date: Wed, 2 Jul 86 22:23 EDT
    From: Kent M Pitman <KMP@SCRC-STONY-BROOK.ARPA>
    To: Fahlman@CMU-CS-C.ARPA
    Subject: Argument lists
    In-Reply-To: <FAHLMAN.12219586689.BABYL@C.CS.CMU.EDU>
    Message-ID: <860702222311.3.KMP@RIO-DE-JANEIRO.SCRC.Symbolics.COM>
    
    A single function FUNCTION-PARAMETER-RANGE which returns two values is 
    indeed a fine idea. (I don't like -COUNT, though, because it suggests
    a single return value.)
    
    Your claim that having this function "adds clutter" is  unsubstantiated
    in my mind. The function is simple, well-defined, and useful to a 
    definable subset of people. MACSYMA already had such a thing which was
    implemented by some of the grungiest system-dependent code you could
    imagine.
    
    If you think it duplicates functionality with this other function,
    it's probably because your view of functionality is too intimately tied
    to data flow. Some functions want part of their contract to be that 
    they are fast. If you overgeneralize their return values, as I claim
    is happening here, you add "data flow" functionality, but you may end
    up forcing some implementations to be slow on an operation that they
    didn't need to be slow at, or you may force some implementations to
    have to do a radical redesign of their storage technique for arglists
    in order to achieve the required speed. I'd just as soon we didn't force
    such redesigns for reasons like this where we can so trivially keep
    from doing this.
    
Out of curiosity, why do you feel the need for a 'fast' version of
function-parameters?  I got the feeling that most people thought that
it would not be used in time-critical code.  If it is not going to be
used in tight-loops, do we really need the separate 'speed'
functionality?

Also, I would be interested to hear from any implementor (preferably
the one who would be responsible for implementing FUNCTION-PARAMETERS
and FUNCTION-PARAMETER-RANGE) who thinks they would implement
FUNCTION-PARAMETERS in such a way as to make it, say, an order of
magnitude slower.


Anyway, if it comes to a vote and if I had a vote, I would vote
against adding FUNCTION-PARAMETER-RANGE.

-- Nick