[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] [r6rs-discuss] [scheme-reports] Scheme pattern matching & R*RS

On Fri, 21 Jan 2011, David Rush wrote:

> On 21 January 2011 14:57, John Cowan <cowan@x> wrote:
>> David Rush scripsit:
>>> Given the wide variety of things that get affected by pattern
>>> matching, while I admit that this is possible, I don't think it is
>>> advisable. Pattern matching is a powerfully expressive mechanism - if
>>> we are going to have it we should properly percolate its power all the
>>> way through the language.
>> You are making the best the enemy of the good,
> Yes I am, because once it gets out as a part of the standard, further
> innovation and improvement will be jeopardized by the existence of
> legacy code. This is a really big deal given how many issues in Scheme
> currently exist precisely for backwards compatibility reasons.
> Really, I would rather do this thing with deep integration, in WG1,
> and do it in R7RS - even pushing out our deadlines - than get tied
> into a large legacy code base.

Pattern matching is a terribly complicated and vast design space that has no 
canonically obvious syntax or semantics.

Putting it in the core would add enormous comlexity to core Scheme, which 
currently attracts many because of its simplicity.  It would take several 
iterations of RnRSs to stabilize.  It would also encourage a change in the 
style of Scheme to a kind of typeless ML in s-expressions.  I do 
not see any pressing need for it.  It seems to go against the founding 
moral principles of Scheme.

We have had pattern matchers for decades, but for some reason very few Scheme 
programmers use pattern matching much.  Does that tell us something?

Scheme-reports mailing list