[pro] (values) for for-effect functions
Ben Hyde
bhyde at pobox.com
Thu Dec 2 23:38:59 UTC 2010
On Dec 2, 2010, at 6:00 PM, Daniel Weinreb wrote:
> In case these terms are too old for anyone to know
> them, we used to use the phrase "for effect" to
> mean a function that was called for the sake
> of its side-effects, ...
> In some code I have seen, the author of the code
> has written (values) at the end of an implied-progn
> body. The purpose, pretty clearly, is to signal
> the reader of the code that the function was
> purely for-effect, i.e. that the returned value
> does not mean anything.
We called this defun-void <http://j.mp/hnqGuk> in thinlisp. Our goal
was to assure we could compile into a C function who's return type was
void. But I came to like how it documented the intent, relieved
readers of having to puzzle out the return value contract, etc. Our
defun-void functions returned a single bogus value. This is the kind
of thing I have always assumed i could do with declare. If only I was
clever enough and patient enough to get it to work across
implementations. But one of the reasons thinlisp isn't a going
concern at this instant is the clever things we tried to do with
declare. - ben
More information about the pro
mailing list