.ix source files, generates C and assembly, and uses GCC and NASM to produce Linux x86_64 ELF binaries.
The language is designed around three principles:
- Explicit over implicit: memory allocation and ownership remain visible in your source.
- Simple over clever: syntax stays close to C.
- Extensible over fixed:
.ihlibraries let you package reusable i++ code.
Explicit
Memory allocation and ownership stay visible in your source.
Familiar
C11 syntax makes it easier to read and build on existing knowledge.
Extensible
.ih libraries let you organize and reuse i++ code.Language features
i++ retains the C11 baseline, including pointers, enums, unions,typedef, control flow, and C-style structs. It also provides:
stringvalues anddynamarrays.- Explicit heap allocation with
allocateandfree. - Namespaces and library imports with
space,using,expose, and@. - Inline assembly blocks.
- The
iodinestandard library.