Разработчик создает компилятор Scheme в WASM с помощью ИИ за 4 дня

Мэтью Филлипс создал Puppy Scheme, компилятор Scheme, который компилирует в WebAssembly, примерно за четыре дня с помощью ИИ. Проект был вдохновлён наблюдением за тем, как другие быстро создают инструменты, близкие к производственному уровню, что обычно занимает месяцы или годы.
Ключевые особенности и возможности
Компилятор включает:
- Поддержку 73% стандартов Scheme R5RS и R7RS
- Поддержку WASI 2 и компонентной модели
- Использование WASM GC (сборка мусора)
- Довольно хорошее устранение мёртвого кода, создающее небольшие бинарные файлы
- Возможность самохостинга — Puppy компилирует свой собственный исходный код в puppyc.wasm
- Обёртку wasmtime для создания нативных бинарных файлов
- Веб-сайт, работающий на Puppy wasm в Cloudflare Workers
Улучшения производительности
Однажды ночью Филлипс попросил Claude "поработать над производительностью", и когда он проснулся, время компиляции улучшилось с 3½ минут до 11 секунд.
Пример кода
Проект включает пример компонентной модели:
(define count 0)
(define (counter-view)
(html
(div (@ (class "counter"))
(button (@ (on "click" "on_decrement")) "-")
(span (@ (class "count")) ,(number->string count))
(button (@ (on "click" "on_increment")) "+"))))
(define (handle-event handler)
(cond
((equal? handler "on_decrement")
(if (> count 0)
(set! count (- count 1))))
((equal? handler "on_increment")
(set! count (+ count 1)))))
Текущий статус
Компилятор всё ещё находится в альфа-качестве, и Филлипс часто сталкивается с ошибками, поэтому он, вероятно, ещё не готов для использования кем-либо, кроме него самого. Однако он отмечает, что "количество функций впечатляет, учитывая, сколько времени я на это потратил". Проект демонстрирует, как ИИ может ускорить разработку сложных компиляторных проектов.
Филлипс работал над этим как над побочным проектом, потратив большую часть выходных плюс час или два в пару будних вечеров. Он не уверен, куда он пойдёт дальше, но проект доступен на puppy-scheme.org.
📖 Read the full source: HN AI Agents
👀 Смотрите также

Tocket CLI: Инженерный Фреймворк Контекста для ИИ-Агентов Программирования
Tocket — это CLI-инструмент, который создает папку .context/ с файлами в формате markdown для AI-агентов, чтобы они могли сохранять память о проекте между сессиями. Он автоматически определяет стек технологий из package.json и генерирует предварительно настроенный файл .cursorrules.

Сяочжэнь: Навык Claude Code, который копает на три уровня вглубь для выявления корневых причин
Сяочжэнь (小真) — это навык Claude Code, который использует три механизма — Дар, Три уровня глубины и Прогноз — чтобы помочь пользователям выяснить, что на самом деле их беспокоит, вместо того чтобы давать прямые советы. Он устанавливается одной командой curl и активируется вводом /小真 в Claude Code.

Claude-Powered MCP Tool Генерирует Интерактивные HTML-Компоненты Без Инструментов Сборки
Разработчик создал daub.dev — систему, в которой Claude управляет MCP-сервером для создания стилизованных, интерактивных HTML-компонентов пользовательского интерфейса из описаний на естественном языке без использования React, сборщиков или конвейеров сборки.

Exasol выпускает MCP-сервер для интеграции контекста базы данных в рабочие процессы AI-агентов
Exasol выпустила MCP Server, который позволяет базам данных предоставлять AI-агентам контекст о доступных данных, бизнес-правилах и безопасных методах взаимодействия. Сервер по умолчанию работает в режиме только для чтения, поддерживает рабочие процессы с высокой параллельной нагрузкой и может быть развернут в локальной среде, в облаке или в гибридных средах.