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.