
21 июня 2025 года состоялся релиз языка программирования Hare 0.25.2 от команды под руководством Дрю ДеВолта (создателя платформы SourceHut и mail-клиента Aerc). Выпуск Hare 0.24.0 состоялся в феврале 2024 года, релиз Hare 0.24.2 произошёл в июле 2024 года.
Этот выпуск включает в себя ряд критических изменений по сравнению с версией 0.24.0 и 0.24.2, которые могут потребовать от пользователей проекта обновить свой код.

Разработчики проекта пояснили, что работа над Hare находится в активной стадии, а между выпусками могут быть некоторые критические изменения. Идей и наработок у них так много, что код проекта быстро меняется. Команда проекта решила выпускать ежеквартальные выпуски Hare с номерами версии типа 0.YY.Q, где YY — двузначный год выпуска, а Q — квартал (с нулевым индексом), в котором она была выпущена. Для каждого выпуска будет подготовлен журнал изменений (включая краткое описание критических изменений и необходимых действий для затронутых пользователей) в рамках развития портала hare-announce.
«В будущем мы будем вносить кардинальные изменения, некоторые из которых могут быть даже драматичными (серьёзными/существенными). Мы планируем заморозить версию языка Hare 1.0, поэтому нам необходимо иметь возможность исправлять ошибки проектирования на этом этапе жизненного цикла Hare. Однако мы признаём, что Hare сегодня является относительно сложным и полезным, и мы хотим найти баланс, который поможет людям использовать его сегодня, имея при этом инструменты, позволяющие справляться с этими изменениями по мере их появления», — уточнил разработчики проекта.
Hare — системный язык программирования, заточенный под написание компиляторов и сетевого ПО. В основу языка положена идея ручного управления памятью, статическая типизация и быстрая скорость выполнения. Исполняемые файлы генерируются на бэкенде компилятора qbe. В стандартную библиотеку Hare входят модули для работы с сетью, криптографические реализации, парсеры и лексические инструменты для POSIX. Есть привязки к OpenGL и SDL2, а также библиотеке libui для построения кроссплатформенных GUI.
По информации OpenNET, доработки и изменения в Hare 0.25.2 включают в себя:
расширение возможностей буферизированного ввода/вывода. В модуль «memio::» добавлен режим потоков «nonblocking». Предложены опции для настройки поведения при обработке конца файла в bufio::scanner и режимы управления потоками bufio::stream. Добавлены функции os::open_buffered и os::create_buffered;
в утилите «haredoc» реализована возможность извлечения из README‑файлов краткого описания модулей и его отображения при выводе списка модулей;
реализована поддержка Unix/POSIX API: io::fsync, io::fdatasync, unix::getrlimit, unix::setrlimit и fcntl (через os::getflags и os::setflags). Для ОС NetBSD портирована поддержка разделяемой памяти;
в утилиту hare добавлена поддержка встраивания внешних обработчиков, вызываемых при помощи подкоманды «hare tool». Например, при помощи подобного обработчика обеспечена интеграция с инструментом «hare‑update»;
в разряд обязательных переведена обработка ошибок в ситуациях нехватки памяти. Добавлен новый примитивный тип «nomem», возвращаемый функциями выделения памяти при невозможности выделить требуемый объём памяти;
улучшен API для работы с датами и временем. Расширены возможности работы с часовыми поясами и добавлена поддержка правил PETZ (POSIX Extending TZ). Многие функции перенесены из модуля time::chrono в time::date;
добавлена поддержка семантических аннотаций кода, позволяющий прикрепить к коду дополнительные метаданные, которые игнорируются компилятором, но могут учитываться лексическим анализатором в стандартной библиотеке;
добавлена утилита hare‑update для упрощения миграции кода на новые версии инструментария Hare, содержащие изменения, нарушающие обратную совместимость. Например, утилита может использоваться для адаптации существующего кода к применению обязательной обработки ошибок выделения памяти, появившейся в текущем выпуске.
Разработчики проекта подготовили документацию и руководство по использованию Hare.
На Hare уже написаны микроядро Helios, менеджер паролей Himitsu, инструмент для шифрования box, торрент‑демон btqd, scheduled (альтернатива cron) и система трассировки лучей raytracing.
Отмечается, что Hare очень сильно похож на C, и почти все программы на C могут быть переписаны на Hare. Однако Hare выглядит проще и удобнее. Разработчики отмечают, что Hare доверяет программисту и явно выполняет написанный код без скрытых манипуляций.
Дистрибутив и библиотеки языка Hare полностью помещается на трёхдюймовой дискете.
