Okta is a new, open source, general-purpose programming language that, although itโs still in its childhood, aims to provide a simple platform to create low level, efficient software.
Simple: Okta is simple and it will remain simple. The objective is to build a programming language that can be fully understood by human beings.
Efficient: Okta source code is translated into LLVM-IR. This opens the door to many state-of-the-art code optimizations, resulting in blazingly fast binaries.
Familiar: Okta avoids alien syntax. If you already know C-like languages, you will feel okta familiar.
Flexible: Okta provides a simple, yet powerful macro system based on Lua. Create and modify the AST of okta programs in compile time with macros written in lua!
Free: Okta is and it will always be free as in freedom. It is released under the GPLv3 license.
type Aquarium = struct {
animals: [Animal; 2],
num_corals: u32,
}
type Animal = enum {
Nemo,
Dori,
Ottis { tentacles: u8, size: f64 },
}
fun main(): i8 {
let ottis = Animal:Ottis {
tentacles = 8,
size = 1.42,
};
let aquarium = Aquarium {
animals = [ Animal:Nemo, ottis ],
num_corals = 16,
};
ret 0;
}
Take a look at the examples here to get a taste of okta ๐.
Okta started as a summer project with the objective of learning about compilers, programming language design and LLVM. That summer ended, and nowadays, I continue to develop okta in my free time. However, okta continues to be a single developer project, with all of its downsides and benefits. Please, feel free to contact me, all help and feedback is very appreciated!!