Hi All,

I'm not sure if you know about this, but there is a discrepancy in the
way some folks define macros to use unquote (aka ,).   For example,

> (use-modules (system base pmatch))
> (pmatch '(foo "bar")  ((foo ,val)  (write val) (newline)))
=> "bar"

> (use-modules (ice-9 match))
> (match '(foo "bar")  (`(foo ,val)  (write val) (newline)))
=> "bar"

Note the difference in the use of quasiquote (aka `) in the pattern
for (foo ,val): match syntax uses it, pmatch does not.
In Scheme, quasiquote and unquote always come together.

Is pmatch syntax in bad taste?  I'm looking for opinions.

Another example is sxml-match, which omits use of quasiquote.
I have written a variation of sxml-match.  Should I keep the sxml-match
usage, which keeps it compatible with sxml-match,  or adopt that
used by (ice-9 match)?

Matt


Reply via email to