Как рекурсивная функция реализована в функциональных языках? - PullRequest
0 голосов
/ 03 мая 2018

Рассмотрим следующую рекурсивную привязку верхнего уровня:

let f = (a => f a);

(где arg => expr - лямбда-выражение)

Чтобы определить f в глобальной среде, сначала мы должны оценить значение f, а именно a => f a. Но поскольку f еще не определено, выражение a => f a может вызвать ошибку.

Как интерпретаторы / компиляторы функциональных языков решают эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...