Разработчик создает язык программирования GALA с помощью Claude Code, отмечая, что строгая типизация повышает надежность кода, сгенерированного ИИ.

Что такое GALA?
GALA — это функциональный язык программирования, который транслируется в Go, разработанный с использованием Claude Code на протяжении всего процесса. Транспайлер написан на Go, а GALA добавляет несколько функций к Go, сохраняя совместимость с библиотеками Go, отладку с delve и профилирование с pprof. Проект является бесплатным и открытым исходным кодом под лицензией Apache 2.0.
Ключевые особенности GALA
- Запечатанные типы (алгебраические типы данных)
- Исчерпывающее сопоставление с образцом
- Неизменяемость по умолчанию
- Монады:
Option[T],Either[A,B],Try[T] - Транслируется в обычный код Go
Как Claude Code помог в разработке
Claude Code написал значительные части транспайлера, включая:
- Преобразование дерева разбора ANTLR в AST Go
- Правила вывода типов
- Генерацию кода для запечатанных типов
- Вывод типов параметров лямбда-выражений
Claude также реализовал сценарии боевого тестирования, где он писал программы на GALA (HTTP-серверы, конвейеры данных, пулы воркеров), чтобы нагрузить транспайлер и выявить ошибки. Более 40 ошибок были найдены и исправлены таким образом, причём Claude Code писал как тестовые примеры для воспроизведения, так и исправления.
Ключевое наблюдение о строгой типизации и Claude
Разработчик заметил, что когда Claude пишет код на GALA, компилятор обнаруживает ошибки, которые в Go прошли бы незамеченными. Например, с определением запечатанного типа:
sealed type Result[T any] {
case Ok(Value T)
case Err(Message string)
}
Если вы напишете сопоставление, забыв вариант:
val msg = result match {
case Ok(v) => fmt.Sprintf("got %d", v)
// Ой — забыли case Err(msg)
}
Компилятор GALA сразу же отклоняет это. В Go switch с отсутствующим случаем скомпилировался бы нормально. Claude иногда пропускает случаи при генерации кода на Go, но в GALA компилятор немедленно обнаруживает эти ошибки.
Почему это важно для пользователей Claude Code
- Исчерпывающее сопоставление: Компилятор сообщает Claude, когда случай не обработан
- Неизменяемость по умолчанию: Меньше случайных ошибок мутации в сгенерированном коде
- Вывод типов: Claude пишет
list.Map((x) => x * 2)вместо многословных аннотаций типов, уменьшая поверхность для ошибок - Монадическая обработка ошибок:
Try[T].Map().FlatMap().Recover()вместо цепочекif err != nil, которые Claude иногда ошибается
GALA доступен для тестирования с предварительно собранными бинарными файлами для Linux/macOS/Windows или через онлайн-песочницу в браузере.
📖 Read the full source: r/ClaudeAI
👀 Смотрите также

ClawControl 1.7.1 улучшает надежность передачи сообщений и поддержку медиа для OpenClaw.
ClawControl 1.7.1 исправляет несколько проблем на стороне клиента, включая накопление текста, фантомные сообщения и проблемы с обработкой медиа. Обновление сохраняет совместимость с OpenClaw до версии 3.28.

Сервер Octopoda MCP добавляет постоянную память, обнаружение циклов и журналы аудита в код Claude.
Разработчик создал Octopoda, сервер MCP, который интегрируется с Claude Code, предоставляя постоянную память, обнаружение циклов, аудиторские журналы и общие пространства знаний для ИИ-агентов. Система использует PostgreSQL с pgvector для семантического поиска, FastAPI и React-панель управления.

Операции основателя в Клод: 19 повторяемых навыков для стартапов на ранней стадии
Основатель, продавший свой первый стартап, опубликовал 19 совместимых с Claude навыков-подсказок для таких функций, как позиционирование, ценообразование, поиск клиентов и копирайтинг — основанных на его собственных SOP и рабочих процессах в Notion.

Cowork против Claude Chat: Сравнение точности извлечения документов
Разработчик протестировал чат Claude.ai и Cowork на извлечении данных из финансовых PDF-файлов объемом более 140 страниц с использованием идентичных промптов. Чат показал результаты институционального уровня с самокоррекцией и нулевыми ошибками по более чем 150 точкам данных, в то время как Cowork сфабриковал согласующие позиции, перепутал подсчеты единиц и допустил загрязнение данных из колонок предыдущего года.