Llenguatge de programació Hare una alternativa al C • The Register

Dilluns, el desenvolupador de programari Drew DeVault va anunciar un llenguatge de programació de sistemes anomenat Hare, descrivint-lo com “simple, estable i robust”. Tots ho hem sentit abans, però pot haver-hi alguna cosa en això.

Més de 400 llenguatges de programació han existit en un moment o altre. Hare pretén servir com a alternativa a C, possiblement el llenguatge de programació més important dels últims 50 anys.

DeVault i uns 30 col·laboradors del projecte han estat treballant a Hare durant uns dos anys i mig. Ara han deixat anar el seu conill perquè els desenvolupadors puguin córrer amb ell.

“Hare utilitza un sistema de tipus estàtic, gestió manual de memòria i un temps d’execució mínim”, va explicar DeVault en una publicació al bloc. “És molt adequat per escriure sistemes operatius, eines del sistema, compiladors, programari de xarxes i altres tasques de baix nivell i alt rendiment”.

En un correu electrònic a El RegistreDeVault va escriure que Hare s’inspira principalment de C.

“No estic tan insatisfet amb C com semblen molts altres dissenyadors d’idiomes”, va observar DeVault. “Hare és un conjunt conservador de millores respecte a les idees bàsiques de disseny de C i pretén ser el que C hauria estat si s’hagués construït amb el benefici de la retrospectiva”.

DeVault va revelar que la biblioteca estàndard de Hare incorpora idees del llenguatge de programació Go de Google, específicament amb prou capacitats integrades a la biblioteca estàndard (bateries incloses, en argot de codificació) per evitar la necessitat d’importar dependències.

“La idea és tenir suficients bateries per facilitar molts casos d’ús sense provocar que els programadors arribin a les dependències, tot i que encara tinguin un abast manejable”, va argumentar. “Crec que Go ho fa raonablement bé; de fet, alguns mòduls Hare eren ports més o menys directes de Go (especialment cripto).”

Les bateries de Hare inclouen: una suite de criptografia; suport en xarxa; operacions de data/hora; Abstraccions d’E/S i del sistema de fitxers; Primitives Unix com poll, fnmatch i glob; Expressions regulars ampliades POSIX; un analitzador i un verificador de tipus; i documentació de referència.

Hare no enllaça a libc, la biblioteca estàndard C, per defecte. Es basa en el backend del compilador qbe. Heus aquí quina llebre “Hola, món!” programa sembla:


use fmt;
export fn main() void = {
        fmt::println("Hello world!")!;
};

Hare s’ha caracteritzat com un gir reduït a Zig, que també és un llenguatge de sistemes de baix nivell amb gestió de memòria manual. Sens dubte, està menys implicat que Rust, una altra alternativa C que ha guanyat un nombre important de seguidors durant els últims anys.

DeVault, però, descriu Hare com una manera d’evitar les trampes de C.

“Crec que molts dels idiomes que pretenen competir amb el C estan massa allunyats d’aquest”, ha opinat. “La llebre és un llenguatge conservador que pretén destil·lar les lliçons apreses dels darrers 30 anys en un llenguatge petit, senzill i robust en el qual es pot confiar durant els propers 30 anys. No ens preocupen tant les innovacions atrevides com ens estan amb una enginyeria acurada”.

Actualment, Hare admet tres arquitectures de conjunt d’instruccions de CPU (x86_64, Arm’s aarch64 i riscv64) i dos sistemes operatius: Linux i FreeBSD. Segons DeVault, encara que actualment no hi ha cap pla per donar suport a plataformes no lliures com macOS o Windows, una implementació o forquilla de tercers podria intentar que això funcioni.

L’idioma segueix sent un treball en curs, tal com es detalla al full de ruta, que actualment se centra en l’estabilitat per a una versió 1.0 i millores estàndard de la biblioteca com el suport de TLS i endolls IP en brut.

“Espero que en els primers dies gran part del desenvolupament es continuï centrant en el propi llenguatge”, va assenyalar DeVault, “però ja és útil per a… eines del sistema com utilitats de línia d’ordres, dimonis com cron, sistemes d’inici i supervisors, etc.”

DeVault va explicar que està utilitzant Hare per escriure un gestor de contrasenyes i un nucli, projectes per als quals el llenguatge s’adapta bé. “Crec que s’obriran molts casos d’ús addicionals un cop tinguem suport TLS també”, va afegir.

Actualment, Hare es basa en el model de governança BDFL (dictador benèvol per a la vida). “El llenguatge està dissenyat per estabilitzar-se i mantenir-se en gran mesura inalterable, de manera que no cal necessàriament una gran governança”, va explicar DeVault, i va assenyalar que hi ha un esforç actual de recaptació de fons centrat a pagar una auditoria de criptografia.

“La llebre és la suma dels esforços d’unes 30 persones al llarg de dos anys i mig”, va dir DeVault. “Hem treballat molt, estem molt orgullosos d’això i esperem que us agradi”. ®

Leave a Comment

Your email address will not be published. Required fields are marked *