The Snekky Programming Language
Please do not take this project too seriously. I'm in no way a professional. To be honest, I'm surprised myself that Snekky is even somewhat usable.
- Familiar syntax.
- Compiles to a custom bytecode.
- Arrays and hashes.
- Lambdas and closures are supported.
ifs and functions may implicitly return a value.- Final (
let) and mutable (mut) variables. - Destructuring of arrays and hashes.
for ... inloops with iterators.- As flexible and dynamic as a snek.
- Download and install Haxe.
- Clone this repository.
- Compile the project by executing
haxe build.hxml.
Release binaries can be found on the releases tab.
Binaries of the latest unreleased version can be found on the actions tab.
- Create a file called
input.snek - Run it using
Snekky.exe input.snek
// This is a comment
let add = func(a, b) {
let result = a + b;
Sys.println(result);
};
add(1, 2);
mut i = 0;
while i < 10 {
Sys.println(
if (i > 5) {
"Snek"
} else {
i
}
);
i += 1;
}
func(msg) {
Sys.println("Self-invoking function says " >< msg);
}("Axolotls are cool!");
- Fork it (https://github.com/snekkylang/snekky/fork)
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request
- Senk Ju - creator and maintainer