Simple and safe.
-
Add C-style enums (by 8/18/23)
Add:
enum
keyword, enum variant instantiation with::
operator. -
Add
match
keyword (by 8/21/23)Add:
match
keyword, use phi values.MIR effect: Will require permutations to prove invariants.
-
Add Rust-style enums (by 8/24/23)
Add:
enum
instantiation really instantiates a struct containing the value and the discriminant, updatematch keyword
-
Add
String
type (by 8/26/23)Add:
String
type. -
Add
std::io::print
type (by 8/28/23)Add:
std::io::print
builtin function. -
Allow
fn
to take references (by 9/2/23)Update:
fn
parameter list.Mir effect: Will require lifetime checks for functions.
Kestrel has a syntax highlighting theme for VSCode! To install:
cd kestrel-syntax
make install
- Restart VSCode
-
Ahead of time compilation - Kestrel is compiled ahead of time (AOT), instead of being interpreted or JIT compiled. AOT compilation allows Kestrel to catch entire classes of runtime errors, vastly improving the developer experience.
-
Statically typed - Kestrel resolves types at compile time, resulting in immediate warnings and feedback.
-
Performance - AOT compilation means that Kestrel programs are compiled directly to machine code, allowing programs to be executed on any target platform natively, with blazing fast performance.
-
Helpful compiler - Descriptive and detailed error messages improve the debugging experience.
-
Borrow checker - Ensures that invariants which prevent many types of memory errors by converting Kestrel code into Kestrel MIR.