[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: question on the opaque syntax object debate



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