E 'un po 'l'uomo whooaoaa, come può quel lavoro ???' - ma penso che stiate descrivendo il fenomeno noto come "self-hosting":
Le lingue (o le toolchain/piattaforme) non iniziano come self-hosting - iniziano la vita essendo state costruite su una piattaforma esistente: a un certo punto diventano abbastanza funzionali da consentire la scrittura di programmi che comprendano la sintassi in cui è scritto.
C'è un grande esempio nel classico libro AWK, che introduce un programma AWK che può analizzare (una versione ridotta come succede) altri programmi AWK: vedi link sotto.
C'è un altro esempio nel libro "Codice bello" che ha un programma Javascript che può analizzare Javascript.
Penso che la cosa da ricordare su questo - se si dispone (per esempio) di una JVM scritta in Java che può quindi eseguire codice Java Byte: la JVM che esegue Java JVM stessa deve essere ospitata in modo nativo (forse questa JVM era scritto in 'C' e poi compilato in codice macchina): questo è vero in ogni caso di un programma di auto-hosting alla fine - da qualche parte lungo la linea.
Quindi il mistero viene rimosso, perché ad un certo punto, c'è un programma di codice macchina nativo che gira sotto ogni cosa.
È un equivalente di poter descrivere la lingua inglese (ecc.) Utilizzando la stessa lingua inglese .... forse ...
http://www.amazon.co.uk/AWK-Programming-Language-Alfred-Aho/dp/020107981X/ref=sr_1_fkmr0_3?ie=UTF8&qid=1266397076&sr=8-3-fkmr0
http://www.amazon.co.uk/gp/search/ref=a9_sc_1?rh=i%3Astripbooks%2Ck%3Abeautiful+code&keywords=beautiful+code&ie=UTF8&qid=1266397435
http://en.wikipedia.org/wiki/Self-hosting
Non era il primo compilatore C++ di Bjarne Stroustroup scritto in C++ (quando era ancora chiamato "C With Classes")? Quale considererei ancora più impressionante, dal momento che il C++ non è un linguaggio interpretato ma richiede un compilatore! – Matthias
Che è esattamente ciò che non capisco :) – kji
Il nuovo libro del drago, prima edizione (stare lontano dalla seconda edizione corrotta dagli errori) spiega il bootstrap del compilatore. –