Хабр Курсы для всех
РЕКЛАМА
Большая витрина: от крупнейших школ до частных авторов. Сравнивайте по цене, длительности, формату и выбирайте самый подходящий курс!

Просто предложение, возможно лучше в функции eval ветвление реализовать через match, а не через if?
Пишем свой диалект LISP