[R6RS] library and transformer phases
Michael Sperber
sperber at informatik.uni-tuebingen.de
Mon Jul 10 13:19:58 EDT 2006
dyb at cs.indiana.edu writes:
> With Model 1, none of these problems arise; the syntax, semantics,
> and implementation are all simpler. The downside of Model 1 is that
> run-time code might count, perhaps unintentionally, on side effects
> caused by expand-time code to the internal state of a library,
> thereby making it more difficult to compile the code separately at
> some future point.
Also, you run into the semantic problems explained in Matthew's paper,
no?
Would an implementation be allowed to throw away the expand-time
state?
It seems that with Model 1, things need to be specified in a way that
it's an error if run-time code refers to the state left behind by
expand-time code. It seems even messier if there expand-time state of
one module depends on expand-time state of another module---you could
write a module that can observe compilation/expansion order, for
example.
--
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla
More information about the R6RS
mailing list