[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] #1152: Reserved pattern symbols break when a binding
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] #1152: Reserved pattern symbols break when a binding of the same name exists |
Date: |
Thu, 04 Sep 2014 11:08:57 -0000 |
#1152: Reserved pattern symbols break when a binding of the same name exists
---------------------------+------------------------------------------------
Reporter: syn | Owner: ashinn
Type: defect | Status: new
Priority: major | Milestone: someday
Component: extensions | Version: 4.9.x
Keywords: matchable egg |
---------------------------+------------------------------------------------
When reserved pattern symbols like {{{?}}} or {{{_}}} are bound in the
lexical environment of a {{{match}}} expression, they don't work anymore:
{{{
(import matchable)
(let ((? 1))
(match '(x y)
((? odd?) (print ?))))
(match '(x y)
((_ _) (print 'ok)))
(let ((_ 1))
(match '(x y)
((_ _) (print 'ok))))
}}}
Output:
{{{
$ csc matchbug.scm && ./matchbug
x
ok
Error: (match) no matching pattern
Call history:
matchbug.scm:5: print
matchbug.scm:8: print
matchbug.scm:10: failure391
matchbug.scm:10: error <--
}}}
--
Ticket URL: <http://bugs.call-cc.org/ticket/1152>
CHICKEN Scheme <http://www.call-with-current-continuation.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.
- [Chicken-janitors] #1152: Reserved pattern symbols break when a binding of the same name exists,
Chicken Trac <=