[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
> versions:

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 mailing list