Доступен язык программирования Hare

good-penguin.png

Впервые представлен широкой публике язык программирования Hare, который разрабатывает Дрю ДеВолт (автор Sway и SourceHut) со своей командой последние пару лет.
Hare — язык для системного программирования с минималистичным рантаймом, статической типизацией и ручным управлением памятью.

Исходный код компилятора предоставляется под лицензией GPLv3, а для стандартной библиотеки под лицензией MPL (Mozilla Public License). Компилятор Hare не основан на LLVM или GCC, а использует легковесный qbe. Программы на Hare не линкуются с libc по умолчанию.

На данный момент заявлена поддержка архитектур x86_64, aarch64 и riscv64, а также операционных систем Linux и FreeBSD. Поддержкой несвободных платформ команда заниматься не намеревается и предлагает это делать сторонним разработчикам, благо язык хорошо стандартизован.

На Hare уже есть написанные проекты; например, микроядро Helios.

Пример кода:

use crypto::sha256;
use encoding::hex;
use fmt;
use hash;
use io;
use os;

export fn main() void = {
	const hash = sha256::sha256();
	const file = os::open("main.ha")!;
	defer io::close(file);
	io::copy(&hash, file)!;

	let sum: [sha256::SIZE]u8 = [0...];
	hash::sum(&hash, sum);
	hex::encode(os::stdout, sum)!;
	fmt::println()!;
};

>>> Подробности

©  Linux.org.ru