Re: [Scheme-reports] Formal Comment: (exit #t) should be the same as (exit) John Cowan (28 Mar 2012 22:21 UTC)

Re: [Scheme-reports] Formal Comment: (exit #t) should be the same as (exit) John Cowan 28 Mar 2012 22:21 UTC

Alan Watson scripsit:

> Formal Comment

Ticket #372 filed for the Formal Comment; ticket #373 filed for the change.

I support this proposal.

Stefan Edwards scripsit:

> Should it perhaps be similar to what is defined in section 6.3 (i.e.
> similar to if's <Test>)?
>
> " Of all the Scheme values, only #f counts as false in condi- tional
> expressions. All other Scheme values, including #t, count as true "
>
> and leave it as implementation defined if the value passed to exit is
> actually returned to the OS/system below Scheme.

I don't support this, because process exit is not like Scheme truth.
In a process exit, there is only one kind of success (0 in Posix/Windows,
"" in Plan 9, 2 in VMS, etc.), whereas there are many kinds of failure.
So #t should map to conventional success, #f should map to some kind of
failure, and any other object should be (as far as possible) passed to
the OS.

--
A poetical purist named Cowan           [that's me: cowan@ccil.org]
Once put the rest of us dowan.          [on xml-dev]
    "Your verse would be sweeter        http://www.ccil.org/~cowan
    If it only had metre
And rhymes that didn't force me to frowan."     [overpacked line!] --Michael Kay

_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports