Cita:
Empezado por Casimiro Notevi
Ya, ya, y por ejemplo ¿con qué está hecho haskell? Solamente tienes que mirar la cabecera de uno de sus ficheros fuentes;
Código:
{-# LANGUAGE CPP #-}
{-# LANGUAGE DeriveDataTypeable #-}
|
Y con que esta hecho
https://www.kitlang.org/? Con haskell, que compile a C que compila por LLVM (c++) a Assembler.
Y como es posible que Delphi estuviera hecho en Delphi? Porque se puede hacer:
https://en.wikipedia.org/wiki/Bootstrapping_(compilers)
Y entonces, es posible compilar de Ruby a Rust a Scala y asi atavesar 128 lenguajes de programacion terminando en REXX y luego en Ruby de nuevo:
https://github.com/mame/quine-relay
porque un compilador es:
Cita:
Input -> Compile -> Output
|
y por lo tanto, NO LE IMPORTA que se use en el COMPILE mientras pueda leer su INPUT y generar su OUTPUT.
Un interprete, por el contrario, si se beneficia de "bajar" de nivel, puramente porque necesita un runtime.