On Mon, Aug 2, 2021 at 6:07 PM Fred Cisin via cctalk
<cctalk at classiccmp.org> wrote:
One of the rites of passage (not necessarily the only
one) in "computer
science" education is that every grad student invents a new language, and
writes a compiler. The compiler is not considered finished until the
current iteration of that compiler was written in that language and
compiled by that iteration of the compiler.
It's an interesting language classification as to whether the primary
/ reference implementation of the language is written in itself or
not. For example, the primary Python implementation is CPython written
primarily in C, and Java is primarily C++ (certainly both have
substantial libraries that are written in the language however, and
there exist implementations of both that are written in themselves I
believe like PyPy for Python).
For languages that aren't written in themselves it means that some of
the core language developers may primarily be C/C++ programmers which
might have some impact on the language's design and/or implementation.
Another interesting question is whether the currently shipping version
of a language written in itself was compiled using the same version of
itself or the previous version. I recall HP compilers generally being
built with the previous version (at least the last time I looked which
was probably in another century).