David Kastrup <d...@gnu.org> writes:
> I am not sure about the strength of the respective dependencies, but let
> me just say that "universally-unique gensyms" as an idea has a bad ring
> to me.  It makes the output of the compiler non-deterministic.  This
> makes a lot of simple verification methods (like checking that a
> bootstrapped compiler compiles the same output as its first stage)
> infeasible.

I agree that non-deterministic compiler output is a very serious problem
that must be avoided.  However, if only the gensym _names_ are
non-deterministic, then checking can still be done relatively simply.
It just requires keeping track of the mapping of gensym names between
the two files being compared.

Also note that Andy was able to avoid using non-deterministic names for
the vast majority of gensyms in generated code.  The only exceptions are
for literal syntax objects, which in practice are rarely found outside
of macro definitions.

     Thanks,
       Mark

Reply via email to