Dear Scheme implementors, users, et.al.,

I've got a few questions to all of you (and to members of the committee
that has standardized R6RS in particular). If I follow
the discussions found on r6rs.org regarding pattern matching, then, if I
understood correctly, the stance is that the committee wanted to align
compile-time pattern matching (syntax-case, syntax-rules) with a
possible run-time pattern matching in the future, as well as support
structures/records and other user-defined types (for extensibility).

In particular, the Bigloo's match-case run-time pattern matching has
been discussed, but not selected by the committee (or even fully
understood, AFAICS). My understanding is that one of the reasons was
explicit pattern variable decorators and missing ellipsis.

So the committee proceeded with syntax-case, and disregarded the
run-time pattern matching entirely. I don't see any of it in the R6RS
standard, not even as a SRFI (although there are a few proposals that
could be subsumed by it, e.g., case-lambda, let-with-multiple-values),
although somebody from srfi.schemers.org did say he worked on it.

While I have no personal stake in this, I am, as a user, in fact quite
disappointed in not seeing full-scale pattern matching applied in
Scheme (and supported by standards), in the manner that other 
languages such as MLs and Haskell so fervently implement.

Hence my question: what is the state of pattern matching in Scheme? Are
there ideas to move this forward, or are we, the poor users, left to
live with incompatible pattern matching interfaces and implementations?
Just to mention a few: Bigloo's match-case, PLT/Racket match.ss variants
and many more.

Kind regards,
Pjotr Kourzanov



_______________________________________________
r6rs-discuss mailing list
r6rs-discuss@lists.r6rs.org
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to