Drew Devolt (Drew Devault), author of the user environment of SWAY, AERC email client and the Sourcehut co-development platform, introduced the programming language hare , on which he, together with his team, worked for the last two and a half years. Hare is presented as a system programming language, close to SI language, but easier than si. From the key principles of the HARE design, an orientation of simplification and complete confidence in the actions of the programmer (perform exactly what is indicated, without amaway and implicit behavior), in the presence of auxiliary tools to identify typical errors and problems.
The source texts of the compiler and the toolkit distributed under the GPLv3 license, and the standard library code under the MPL license (Mozilla Public License). In the first public release, is declared Support for Linux and FreeBSD operating systems on the X86_64, AARCH64 and RISCV64 platforms, as well as self-sufficient use to start over the equipment without operating room Systems. The plans mentioned support for NetBSD operating systems, OpenBSD, ILLUMOS, Haiku and Plan 9 and PPC64le, I686 and ARM32 platforms.
The language uses manual memory management and static type system, in which each variable is clearly assigned a specific type. To execute the application, the minimum runtime is attached. The language is optimized for solving low-level tasks, such as the development of operating systems, compilers, network applications and system utilities, which requires achieving maximum performance and complete control over.
For developers, The standard library of functions , providing access to the basic interfaces of the operating system, typical algorithms and implementation of protocols and formats. The library covers areas such as input / output, work with files, regular expressions, encryption, network interaction, operations with time and dates, access to typical UNIX primitives (for example, Poll, Fnmatch and Glob), PARSING and Type Check. Separately, bindings are provided to access the possibilities of OpenGL , SDL2 and libui .
As examples of projects written in Hare, are mentioned by microkerrero Helios , password manager Himitsu , rays system Raytracing For encryption Box , BitTorrent demon btqd , Scheduled (Analog CRON system), ToothBRUSH