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

multiple values



   Date: Tue, 22 Aug 89 18:07:02 PDT
   From: will@cs.uoregon.edu

   Passing an incorrect number of arguments to a procedure isn't required to
   signal an error, so procedures don't have to check it.  

You are correct.  I forgot that arity mismatches don't necessarily signal an
error. 

   Also, why should
   the run-time representation of (lambda args #t) include any bits that
   indicate the number of arguments it expects?

Assuming that an implementation does put in checks for the wrong number of
args, then, at least in theory, one could parse the code to find the arity
information.  This might be a pain in the butt; but, at least in theory, it is
possible.  In those cases where the code does not need to check arity because
it was determined not to be necessary at compile time, the answer to an
ACCEPTS? query should also be decidable at compile time.  (I wasn't suggesting
this implementation, but only pointing out that an implementation exists which
has essentially zero runtime cost when ACCEPTS?  is not used.
-------------------------------------------------------------------------------
Morry Katz
katz@polya.stanford.edu
-------------------------------------------------------------------------------