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

Re: [Scheme-reports] [r6rs-discuss] Scheme pattern matching: the case for (case)

Peter Kourzanov scripsit:

> Right. However, this still is an underspecified corner of Scheme. Even
> in R6RS I don't see a mandate to always implement (case) via hygienic 
> macros (and have the system solve the rebinding). And neither do
> implementors, in my experience.

I have just added a WG1 ticket to require this in R7RS.

> I have no quoting in my example clauses. Read it as follows:

No, but case implicitly quotes its arguments, which makes it impossible
(or rather useless) for them to be quasiquotations.

> (case 'b
>    ((`,a) (list a))) ; explicate quasiquote

That still won't work.  (` ,a) is just (quasiquote (unquote a)), and in
the context of a case key means "either the symbol quasiquote, or the list
(unquote a which is eqv? to the one in the code".

> I hope this WG shall not try make it more complex and large that it
> needs to be.

You're the one who wants to extend the proposal, actually.

Even the best of friends cannot                 John Cowan
attend each others' funeral.                    cowan@x
        --Kehlog Albran, The Profit             http://www.ccil.org/~cowan

Scheme-reports mailing list