[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] Re: can you believe it? compile time vs. run time is
Re: [Chicken-users] Re: can you believe it? compile time vs. run time issues, again!
Mon, 30 May 2005 08:07:57 +0200
On 5/29/05, Michele Simionato <address@hidden> wrote:
> Cool! But I would get the same effect if "match" and "more-macros" would
> (declare (run-time-macros)), right? I still think this would be the natural
> solution, since it is natural to think that `eval` knows about all standard
> Chicken extensions, the same that are enabled in the interpreter by default,
> unless I specify a r5rs environment. As you know, I really wish for
> consistent behavior between interpreted code and compiled code.
Yes, consistency is a very worthwhile goal. But let me throw in a few
obscure technical details again: declaring run-time-macros in the
include-files will compile all the expander code into the compiled
library/executable. Usually eval is not used, or only for small things,
and here all the code is just bloat. Moreover if you use hygienic macros
at run-time, the expander code is useless, since psyntax uses it's own
expanders (they can't be shared).
Taking into account that it is relatively easy to concoct a bigeval
extension I propose to leave it that way. Chicken is a hog already.