From the README on GitHub:
- Small in size and complexity (just a bit more than Lua though)
- Statically typed
- Unambiguous
- No nonsense coercion
- Fibers
- JIT compilation with MIR
- Tooling
- Generate doc from docblocks (in progress)
- VS Code extension
- Syntax highlighting
- LSP (in progress)
- Debugger and DAP (planned)
The compiler is written in Zig.
You must log in or # to comment.
Very neat! Is it embeddable? There are plenty of statically typed languages but there are hardly any statically typed embeddable languages.
Quite a lot to like here. I only skimmed it but some things that seem like slightly odd choices:
instead of
->
for return types. The latter is pretty clearly nicer IMO and less confusing.- Old C-style
type name
instead ofname: type
. The latter is less confusing and plays better with type inference and inlay hints. Easier to parse too. - For a small language I think arbitrary sized integers make way more sense than fixed size. This is one of the few things Python got completely right IMO. If you care about performance you can add a range type, like
range(0..256)
and unsigned likerange(0..)
and then use flow typing to convert between them.
Author’s comment on lobste.rs:
Yes it’s embeddable. There’s a C ABI compatible API similar to what lua provides.
Is the name “Fizz” already taken?