Я спрашиваю об этом, потому что я относительно новичок в разработке интерпретаторов, и я хотел бы знать некоторые основные концепции, прежде чем изобретать колесо.
Я думал о значениях всех переменных, хранящихся в массиве, который составляет текущую область, при входе в функцию массив переставляется и исходный массив помещается в какой-то стек. При выходе из функции извлекается верхний элемент «стека областей» и используется снова.
- Это в принципе правильно?
- Разве обмен массивами (что означает перемещение большого количества данных) не очень медленный и поэтому не используется современными интерпретаторами?