У меня есть несколько вопросов о реализации абстрактной машины CEK.
Описание этого можно найти в статье "Pycket: отслеживание JIT для функционального языка" , на рисунке1 (стр. 2).
- При применении функции (4-е правило), я думаю, мы должны создать замыкание из аргумента.Существуют ли какие-либо другие правила, в которых нам нужно создать замыкание?
- Я прочитал, что во избежание утечек памяти мы должны уменьшить среду при создании замыкания, то есть удалить все переменные, которые не являются свободными в выражении.Существуют ли какие-либо другие правила, в которых нам нужно сокращать среду?
- Какая структура данных лучше всего подходит для представления среды, чтобы создание замыкания было эффективным?
- Можете ли вы порекомендовать какие-либо ресурсы /книги, в которых подробно рассказывается об эффективном внедрении CEK-машины.