2009/8/30 Peter Bex <[email protected]>:
> [...]
> If (print (environment-has-binding? (interaction-environment) 'hello))
> shows #f, then I would expect (eval '(hello) (interaction-environment))
> to fail, but it simply prints "hello".
> [...]
Hello,
following your logic, the code
(use environments)
(eval
'(define-syntax hello (syntax-rules () [(hello) (print "hello")]))
(interaction-environment))
(print
(environment-has-binding? (interaction-environment) 'hello))
(eval
'(hello)
(interaction-environment))
should also fail in the fourth statement, since the third statement
prints #f ...
I don't think the behaviour of CHICKEN's module system is buggy here,
it's just not very intuitive.
Ciao,
Thomas
--
All these theories, diverse as they are, have two things in common: They
explain the observed facts, and they are completely and utterly wrong.
-- Terry Pratchett, "The Light Fantastic"
_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users