[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Proposed mildly incompatible change to MULTIPLE-VALUE(-BIND)
- To: Guy.Steele at CMU-10A
- Subject: Re: Proposed mildly incompatible change to MULTIPLE-VALUE(-BIND)
- From: Jon L White <JONL at MIT-MC>
- Date: Wed ,22 Apr 81 18:00:00 EDT
- Cc: LISP-FORUM at MIT-MC, Scott.Fahlman at CMU-10A
As it happens, the MacLISP implementation of Multiple-values does a
quick, 1-instruction-in-compiled-code check for too-few returned
values, and if so, then merely calls a function which defaultly
padds out the return-value-vector with nulls; the LISP RECENT
note announcing that feature mentions how a user can switch it
to other actions, such a complaining about mismatch, etc.
There would be virtually no penalty for implmenting your "mildly
incompatible suggestion" in that code. However, I tend to agree
with he comment made by Moon
"The reason it has never been accepted is that in practice most functions
which return multiple values rely on the feature that extra values the
caller does not want are thrown away."
So it would be somewhat of a burden to make the change now; primarily because
of the backwards-compatibility mess, rather than the implementational problems.