← На главную

Разработчик за 6 мс запустил игру на Go с магией Lisp

10.05.2026 03:32 · hackernews

В браузере можно сыграть в рогулайк, где вся магия реализована на лиспе. Каждый запуск генерирует новую историю с уникальным заголовком вроде «Gazebos of Mounting Dread», новыми целями, например «retrieve the Spatula of Futility», и свежей схемой символов. В этой игре руны — это тайные символы, а заклинания — s-выражения. Игрок имеет полный доступ к движку реальности подземелья, однако справочные материалы написаны на мёртвом языке, который меняет свой облик при каждой перезагрузке. Мощность мира инвертирована: ранняя стадия требует отчаянного выживания, а к финалу переход к прикладной теологии происходит в условиях недостаточно широких безопасных границ. Пока подземелье пытается убить игрока стандартными методами: пауки стреляют ловушками из паутины, гоблины окружают жертву, а слизни разлетаются при ударе. Троллы регенерируют здоровье. Если поджечь что-то, огонь вызывает панику у окружающих существ, распространяясь через траву на новых жертв, но всё нормально, ничего страшного. Можно толкнуть огр в лаву или одного гоблина в другого. Непроигрышный вариант — случайно упасть в пропасть, которая служит обучающим примером. Разработчик написал проект всего на ~6900 строк кода на let-go, который является диалектом Clojure для виртуальной машины на байtkоде Go. Структуры данных здесь постоянны и устойчивы. В проекте нет внешних зависимостей, а запуск занимает лишь 6 мс. Игра работает нативно или через WASM прямо в браузере. Скачать движок let-go можно по ссылке lg, либо воспользоваться командой brew tap nooga/let-go, чтобы установить его через пакетный менеджер.

Читать оригинал →