Мой код на Scheme специально полностью аналогичен оригинальному коду на JS, например, я не использовал cond, хотя очень хотелось :)
Тем более, никто не мешает посмотреть оригинальный код по ссылке или на гитхабе.
Кстати, интересный вариант — показывать два листинга на разных языках рядом.
Так те, кто не знают один из языков дополнительно «втянуться» в его синтаксис благодаря второму.
Выглядит действительно очень занимательно! Спасибо за перевод.
Сразу зачесались руки немного поправить функцию sub, чтобы вычитание из меньшего числа большего не приводило к взятию tail от пустого списка. Но автор, видимо, сознательно не акцентировался на таких мелочах, потому что и дальше оставлены подобные «небезопасности»: nth, drop, take.
Списки из lambda-функций