У меня есть читатель Lisp, написанный на Java, который я собираюсь перевести на C. (Или, возможно, С++.) Это довольно полный и полезный взлом, поэтому основная проблема заключается в распределении динамического хранилища в язык без сбора мусора. Если кто-то уже подумал об этом, я бы предпочел заимствовать их код, чем сам понять. (C не мой любимый язык.)
Конечно, наличие читателя Lisp не имеет смысла, если вы не планируете что-то делать с вещами, которые вы читаете, поэтому, возможно, я должен был сформулировать вопрос: где найти простое ядро Lisp, написанное в C?, но, по моему опыту, самая трудная неотъемлемая часть написания Lisp (несколько удивительно) - это читатель. Кроме того, я не хочу иметь сборщика мусора; Я предвижу приложение, в котором структуры списков будут освобождены более или менее вручную.