Penso che ci siano pochi esempi a causa della mancanza di motivazione.
Normalmente quando si implementa un compilatore o un interprete il punto sta aumentando il livello di astrazione. Ha molto senso implementare una scrittura assembler in codice macchina, quindi un compilatore C usando l'assemblatore, quindi un interprete Python usando il compilatore C ...
Stare sullo stesso livello o andare nella direzione opposta non è un non senso, ma molto meno naturale ... ed è fatto principalmente per la portabilità. Alcuni casi implementano un assemblatore (per un processore diverso o per un processore generico) utilizzando un linguaggio di livello superiore, eseguendo il bootstrap di un compilatore, implementando una macchina virtuale.
Con Lisp l'intera idea del livello di linguaggio non si adatta bene (qui intendo un Lisp completo che include macro generali complete, macro di lettore e che non è allergico agli effetti collaterali, non una versione autolimitata che consente solo template basato su macro o costringe a un modello di programmazione funzionale).
Lisp non è né un linguaggio di alto livello, né uno di basso livello ... più che un linguaggio Lisp è un meta-linguaggio in cui si modella la lingua che sarebbe l'ideale per risolvere il problema che si sta affrontando. Creare livelli di astrazione del linguaggio è solo normale programmazione in Lisp e non richiede un nuovo linguaggio, compilatore o interprete.
In Lisp non è necessario implementare una lingua completamente diversa se si ha bisogno di un'astrazione specifica (ad esempio eccezioni, oggetti), basta implementare quell'astrazione per l'uso all'interno di Lisp. Ci sono stati sistemi programmati dal controllo hardware fino all'intelligenza artificiale tutto in Lisp.
Ad esempio, in Common Lisp è disponibile il supporto per la programmazione orientata agli oggetti (e più sofisticato rispetto al C ++), ma se non fosse lì potrebbe essere solo codificato ... e in effetti era una normale libreria prima di Common Lisp. In C invece l'unico modo era di creare un compilatore completo da C ++ a C per poterci arrivare.