Re: question on the opaque syntax object debate
Andre van Tonder 20 Aug 2005 19:48 UTC
On Sat, 20 Aug 2005, bear wrote:
> On Sat, 20 Aug 2005, Matthias Neubauer wrote:
>
>> This all seems to bring us back to the "good old times" where there
>> was no real separation between code and data---this time, it just
>> happens "one stage further up" ...
>
> Check me if I'm wrong, but as far as I know the only real problem with
> that was the performance hit. Lisp gives up some expressiveness (not
> turing-completeness, but convenience of expression) when it's divided
> into stages. ("compilation is a performance hack!")
>
> I mean, if there were no performance problems, wouldn't it be more
> powerful to be programming in a lisp where there were no separate
> macroexpansion and compilation phases, and all the semantics were
> available at runtime?
Maybe, but note that in the namespaces thread I was actually advocating a
stricter phase separation, not a looser one, in the suggestion that variables
from different phases should not be able to interfere. An advantage of this
approach is that the meaning of the code then depends just on its lexical
structure, as opposed to being image-based. The meaning is also "invariant
under compilation". I appreciate that the image-based approach has its own
arguments in favour, but for the purposes of this SRFI I would like to choose
one approach and apply it consistently.
I have implemented this idea and will make it available in the next revision for
comment.
Cheers
Andre