[plt-scheme] Re: match-let bug or feature?
I think a more clear example of the problem is:
> (match-let ([(a b) (list 1 2)]
[(b a) (list 8 9)])
(+ a b))
match: no matching clause for ((1 2) (8 9))
=== context ===
/home/d/plt/collects/mzlib/private/match/match-error.ss:9:4: match:error
/home/d/plt/collects/scheme/private/misc.ss:63:7
Because the patterns (a b) and (b a) get concatenated by the match-let
macro into ((a b) (b a)) and the values get concatenated into
((1 2) (8 9)), and because of match's match-equality-test duplicate
variable names feature, match is trying to match the second (b a)
according to what (a b) first matched, and thus the error.
--
: Derick
----------------------------------------------------------------