[r6rs-discuss] [Scheme-reports] [scheme-reports] Scheme pattern matching & R*RS
Andre van Tonder
andre at het.brown.edu
Tue Dec 21 11:43:03 EST 2010
On Tue, 21 Dec 2010, Jim Wise wrote:
> FWIW, with John Cowan's and my changes to the MatchingWise proposal,
> importing the (rnrs match) library overrides the following forms from
> (rnrs core) and (rnrs control) with versions which do pattern matching
> but are otherwise upwardly compatible with the non-pattern matching
I don't like overriding. Experience with it in other languages that make a
fetish of it shows that it almost always leads to code that is more difficult
to understand. The meaning of any code snippet becomes highly contextual and
nonlocal. It is one of the reasons for the failure of object-oriented
languages to deliver on their initial promises in the industry. It is, in my
opinion, a fashion that can't be over soon enough.
There is a long, and in my experience excellent, tradition in Scheme of not
using names in libraries that clash with core names.
If a user disagrees with this and wants to override in his own code, that is
fine. Library renaming provides a mechanism for it. But I do not think this
failed philosophy should be forced onto us by a standardization.
More information about the r6rs-discuss