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 #535
cc
changetime
2013-07-07 03:20:44
component
WG1 - Core
description
Michael Montague writes:
I believe that a library should have at most one `begin` and it should have the semantics of a body (though no expressions are required). This would make the semantics of library bodies clear and make R7RS libraries much closer to R6RS libraries, with little loss in expressiveness.
The question is, what gain is to counterbalance that loss? It's easy for users who agree with this to make sure their libraries have at most one `begin`, and likewise to reformat existing libraries if they feel strongly about it. The benefit, then, must be to implementers -- but what benefit is that? The `define-library` form must be read as a whole, and the first step will normally be to concatenate the `begin` declarations.
In addition, the restriction in the draft that imported identifiers cannot appear in a library textually before the `import` declaration that introduces them (see #353) means that it's possible to construct a library incrementally, adding new `import` and `begin` declarations as you go. This is a convenience for programs that create libraries.
Without a definite improvement visible from the restriction to a single `begin` declaration, this proposal would indeed be one of those "weaknesses and restrictions" that the Scheme standards denounce.
id
535
keywords
milestone
owner
alexshinn
priority
major
reporter
cowan
resolution
wontfix
severity
status
closed
summary
Libraries should have at most one begin
time
2013-05-20 00:00:29
type
defect
Changes
Change at time 2013-07-07 03:20:44
author
cowan
field
comment
newvalue
The WG decided by unanimous consent to take no action on this ticket.
oldvalue
1
raw-time
1373142044410382
ticket
535
time
2013-07-07 03:20:44
Change at time 2013-07-07 03:20:44
author
cowan
field
resolution
newvalue
wontfix
oldvalue
raw-time
1373142044410382
ticket
535
time
2013-07-07 03:20:44
Change at time 2013-07-07 03:20:44
author
cowan
field
status
newvalue
closed
oldvalue
new
raw-time
1373142044410382
ticket
535
time
2013-07-07 03:20:44