[racket] Void expression found

From: Jack Firth (jackhfirth at gmail.com)
Date: Mon Jan 5 22:09:52 EST 2015

Given that racket has multiple return values, what sort of issues would
arise if functions were allowed to return no values at all instead of
opting to return the single value void when they have nothing to return? Is
it purely a backwards compatibility thing, or are there more fundamental
problems with that?

On Mon, Jan 5, 2015 at 4:46 PM, Hendrik Boom <hendrik at topoi.pooq.com> wrote:

> On Mon, Jan 05, 2015 at 05:58:31PM -0500, Sean Kanaley wrote:
> > I see "void" as a tangible value specifying no information, whereas
> > "undefined" is literally no information. So void is more like an empty
> > universe and undefined is no universe at all.
>
> Algol 68 had a void value, called 'empty' in the defining report, but
> it didn't need a name in the language itself, because there were too
> many easy ways of geerating it.
>
> I always considered void to be a type with exactly one value, which
> would need log2(1) bits to reprresent it, i.e., zero.
>
> The report also left a number of things undefined.  An early draft of
> the report went on to specify 'undefined' as meaning anything from a
> reasonable continuation of the computation to 'indescribable chaos'.
>
> -- hendrik
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20150105/6ce81d12/attachment-0001.html>

Posted on the users mailing list.