Пол Грэхем писал, что "Необычная вещь о Lisp - на самом деле определяющее качество Lisp - заключается в том, что она может быть записана само по себе" . Но это не кажется для меня наименее необычным или окончательным.
ISTM, что язык программирования определяется двумя вещами: его компилятором или интерпретатором, который определяет синтаксис и семантику для языка по fiat и его стандартную библиотеку, которая в значительной степени определяет идиомы и методы, которыми обладают опытные пользователи будет использоваться при написании кода на языке.
С некоторыми конкретными исключениями (например, не члены С# семейства .NET) большинство стандартных библиотек языков написаны на этом языке по двум очень веским причинам: поскольку он будет использовать один и тот же набор синтаксических определения, соглашения о вызовах функций и общий "внешний вид" языка, а также потому, что люди, которые могут писать стандартную библиотеку для языка программирования, являются его пользователями и, в частности, его дизайнером. Так что там ничего особенного; это довольно стандартный.
И снова, нет ничего уникального или необычного в том, что компилятор языка написан сам по себе. Компиляторы C написаны в компиляторах C. Pascal, написанных на Паскале. Компилятор Mono С# написан на С#. Heck, даже некоторые языки сценариев имеют реализации, написанные сами по себе.
Итак, что означает, что Lisp необычен в том, что он написан сам по себе?