Содержание
То, что проверяет и определяет смысл выражений в языке программирования, является в свою очередь просто программой.
Хэл Абельсон и Жеральд Сасман, «Структура и интерпретация компьютерных программ».
Когда учение спросил учителя о природе цикла Данных и Контроля, Юань-Ма ответил: «Подумай о компиляторе, компилирующем самого себя».
Мастер Юань-Ма, «Книга программирования»
Создать свой язык программирования удивительно легко (пока вы не ставите запредельных целей) и довольно поучительно.
Главное, что я хочу продемонстрировать в этой главе – в построении языка нет никакой магии. Мне часто казалось, что некоторые человеческие изобретения настолько сложны и заумны, что мне их никогда не понять. Однако после небольшого самообразования и ковыряния такие штуки часто оказываются довольно обыденными.
Мы построим язык программирования Egg (Яйцо). Он будет небольшим, простым, но достаточно мощным для выражения любых расчётов. Он также будет осуществлять простые абстракции, основанные на функциях.
Читать полностью »