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 #517
cc
changetime
2013-07-07 03:20:44
component
WG1 - Core
description
Aaron Hsu writes:
The WG1, by this standard, would seem to have no conception of user extensibility. Indeed, IMO, the entire point of Scheme is that the user is as capable of language design as the systems implementer, and that, indeed, there is no distinction between the two but in name. The idea of their being system extensions and user extensions is a fundamentally anti-Scheme way of thinking. The Scheme language itself is supposed to allow the user to extend the system in powerful ways, and Scheme has been moving in this direction more and more. Real Scheme systems exist that allow the user to create their own workable library systems extensions, or to really do conditional expand-time expansion without requiring system extensions for feature symbols. All of this can be done programmatically and using no more than the constructs provided by R6RS.
id
517
keywords
milestone
owner
alexshinn
priority
major
reporter
cowan
resolution
wontfix
severity
status
closed
summary
The draft doesn't support user extensibility
time
2013-05-13 09:05:34
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
2
raw-time
1373142044410382
ticket
517
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
517
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
517
time
2013-07-07 03:20:44
Change at time 2013-05-13 09:09:54
author
cowan
field
comment
newvalue
First of all, it is a gross exaggeration to say there is no user extensibility. Scheme's combination of procedural and syntactic abstraction provides more extensibility than almost any other language. (Common Lisp does that too, but its style of doing so is subtly but crucially different.)
The module system is the largest mandatory extension to R5RS. Keeping it simple and static rather than allowing greater generality seemed to the WG to be the appropriate tradeoff between flexibility and ease of use and implementation. Not everything in Scheme is designed for maximal flexibility. It's true that R6RS provides more tools than R7RS-small, but at the expense of not being a small language. Providing a modest fixed point in the form of a static library system is what keeps the language small.
oldvalue
1
raw-time
1368410994361270
ticket
517
time
2013-05-13 09:09:54