Hadron
Pre-Alpha Development Stage
Downloads & Roadmap
Get the latest version of Hadron, explore what's planned and what to expect from the current release.
Downloads
Note: Hadron is in pre-alpha development, so no binaries are available yet.
We are working on Quark, the developer toolchain for Hadron. To try Hadron out, you should build it from source by following the steps shown.
1
1
2
3
4
5
6
# Clone using HTTP
$ git clone https://github.com/hadron-lang/hadron.git
# Or using SSH
$ git clone git@github.com:hadron-lang/hadron.git
$ cd hadron
# Build in release mode (requires LLVM 21, Clang 21, Ninja)
$ cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
$ cmake --build build --parallel
Roadmap
| Feature | Status | Details |
|---|---|---|
| Basic Mathematical Expressions | Complete | Supports +,
-, *,
/, %, and parentheses for grouping.
|
| Numbers | Complete | Integer types i8–i64,
u8–u64,
and floats f32/f64.
|
| Logical and Comparison Expressions | Complete | Logical operators
!,
&&,
||
and comparison operators
==,
!=,
<,
>,
<=,
>=.
|
| Variable Declarations | Complete | Immutable val x: i32 = 1
and mutable var x: i32 = 0 with type inference.
|
| Type Inference | Complete | Type is inferred from the initializer:
val x = 42 infers i32.
|
| Function Definitions | Complete | Syntax: fx name(a: i32) i32 {}
with full return type support and variadic functions.
|
| Control Flow | Complete | if/else (including as expressions),
while,
for,
loop,
break, and
continue.
|
| Structs & Enums | Complete | Custom data types with struct and
enum, field access with ..
|
| FFI / C Interop | Complete | Call C functions via extern fx declarations.
Supports variadic functions like printf.
|
| Pointers & Slices | Complete | ptr<T> for pointers,
slice<T> for memory views,
address-of & and dereference *.
|
| LSP Server | In Progress | Language Server Protocol support for IDE integration (diagnostics, hover, go-to-definition, completion). |
| Type Aliases | Not Started | Syntax: type Name = i32.
|
| Number Ranges | Not Started | Support for range operators .. and
..= for iteration.
|
| Standard Library | Not Started | Modules std.io,
std.mem, and
std.string.
|
| Asynchronous Execution | Not Started | Create and execute asynchronous functions using
async and
await.
|