This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home.
Source for ticket #372
cc
changetime
2012-10-12 03:02:49
component
WG1 - Core
description
Submitter's Name: Alan Watson
Submitter's Email Address: alan at alan-watson dot org
Draft Version of Report: 6
Section of draft R7RS: 6.13.4 System interface
The draft R7RS follows the R6RS in specifying that `(exit)` is a normal exit, specifying that `(exit #f)` is an abnormal exit, and leaving the interpretation of arguments other than `#f` to the implementation.
I suggest that the R7RS should specify that `(exit #t)` is identical to `(exit)`. (Perhaps it would be clearer to state that `(exit #t)` is a normal exit and `(exit)` is identical to `(exit #t)`).
This allows the exit status to be handled more uniformly by code which might exit normally or abnormally. For example, in a compiler it is often useful to continue after a syntax error, but in this case one still wants to indicate an abnormal exit. If `(exit #t)` is specified as above, one simply has to keep track of whether an error has occurred in a boolean variable and then:
{{{
(exit (not error-occurred))
}}}
rather than the more cumbersome:
{{{
(if error-occurred
(exit #f)
(exit))
}}}
id
372
keywords
milestone
owner
cowan
priority
major
reporter
cowan
resolution
fixed
severity
status
closed
summary
Formal Comment: (exit #t) should be the same as (exit)
time
2012-03-29 04:59:48
type
defect
Changes
Change at time 2012-10-12 03:02:49
author
cowan
field
comment
newvalue
oldvalue
3
raw-time
1349985769242891
ticket
372
time
2012-10-12 03:02:49
Change at time 2012-10-12 03:02:49
author
cowan
field
resolution
newvalue
fixed
oldvalue
raw-time
1349985769242891
ticket
372
time
2012-10-12 03:02:49
Change at time 2012-10-12 03:02:49
author
cowan
field
status
newvalue
closed
oldvalue
accepted
raw-time
1349985769242891
ticket
372
time
2012-10-12 03:02:49
Change at time 2012-07-02 10:06:53
author
cowan
field
comment
newvalue
oldvalue
2
raw-time
1341198413618050
ticket
372
time
2012-07-02 10:06:53
Change at time 2012-07-02 10:06:53
author
cowan
field
owner
newvalue
cowan
oldvalue
alexshinn
raw-time
1341198413618050
ticket
372
time
2012-07-02 10:06:53
Change at time 2012-07-02 10:06:53
author
cowan
field
status
newvalue
accepted
oldvalue
new
raw-time
1341198413618050
ticket
372
time
2012-07-02 10:06:53
Change at time 2012-03-29 05:01:05
author
cowan
field
comment
newvalue
oldvalue
1
raw-time
1332972065511566
ticket
372
time
2012-03-29 05:01:05
Change at time 2012-03-29 05:01:05
author
cowan
field
summary
newvalue
Formal Comment: (exit #t) should be the same as (exit)
oldvalue
Formal Comment:
raw-time
1332972065511566
ticket
372
time
2012-03-29 05:01:05