¿Qué características de lenguaje se requieren en un lenguaje de programación para hacer un compilador?

Los lenguajes de programación parecen pasar por varias etapas. En primer lugar, alguien sueña con un nuevo idioma, Foo Language. El compilador / intérprete está escrito en otro idioma, generalmente C u otro idioma de bajo nivel. En algún momento, FooL madura y crece, y eventualmente alguien, en algún lugar, escribirá un compilador y / o intérprete para FooL en FooL.

Mi pregunta es la siguiente: ¿cuál es el subconjunto mínimo de características del lenguaje para que alguien pueda implementar ese lenguaje en sí mismo?

Respuestas a la pregunta(5)

Su respuesta a la pregunta