Bamba 2
About
A remake of my programming language, bamba.
Hello World
def printf: extfn -> void;
fdef main: proc -> i32 {
printf("Hello World!");
return i32(0);
}
Fib
def fib: proc idx[i32] -> i32 {
if (idx < 2) {
return idx;
}
return fib(idx - 1) + fib(idx - 2);
}
Main builder builder
def mainBuilderBuilder: proc T -> class {
return class {
def buildMain: proc value[T] -> (fn -> T) {
return fn -> T {
return value;
}
}
}
}
fdef main: mainBuilderBuilder(i32).buildMain(0);
Reflection
- fdef and extfn are dumb keywords, problaby should split them into modifiers.
- Its obnoxious to use ~(*value) to invert a dereferenced value.
- Its obnoxious to use ~(*value) to invert a dereferenced value.
Last Modified 2023 08/07