On Mon, Aug 2, 2021 at 6:07 PM Fred Cisin via cctalk <cctalk@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).