Content deleted Content added
Line 128:
Historically, the XL compiler was written in C++. It had achieved a point where most of the features described above worked correctly, but writing plug-ins was a nightmare, because C++ itself is not extensible, so implementing <code>translate</code>-like statements was impossible. The parse tree was more complicated, with dozens of node types, because it was designed for cross-language support. Moka was a Java-to-Java extensible compiler using the same infrastructure.
Abandoning the cross-language objectives and complex parse-tree structure, a [[Rewrite (programming)|complete rewrite]] of the compiler was started in 2003. The parse tree was vastly simplified down to the 7 XL0 nodes types now in use. This new compiler [[Bootstrapping (compilers)|bootstrapped]] in 2004, and all new development is now written in XL. However, this new compiler still has somewhat incomplete XL1 support, although its capabilities already exceed C++ in a few areas.
=== Ancestry ===
|