Compiling E: Phases of Transformations
Ralph Hartley
hartley@AIC.NRL.Navy.Mil
Mon, 07 Aug 2000 14:35:12 -0400
> The transformation from User-E to Kernel-E is standard, portable, and
> canonical. Modulo choice of generated names, two E implementations must
> transform the same User-E program into the same Kernel-E program. This is
> the form of E normally seen by programs that manipulate programs.
If you're going to make the transformation canonical, make it
canonical.
All you need to do is to specify a canonical way of generating names.
There is no reason to generate names differently in diferent
implementations. If instead of Kernel-E the transformation was into
some other language, with implementation dependent rules about what is
a legal name, that would be different.
Ralph Hartley