| ⎡ | ᚢ | ᛫ | ᛫ | ᛫ | ⎤ |
| ⎢ | ᛫ | ᚾ | ᛫ | ᛫ | ⎥ |
| ⎢ | ᛫ | ᛫ | ᛞ | ᛫ | ⎥ |
| ⎣ | ᛫ | ᛫ | ᛫ | ᚱ | ⎦ |
A statically-typed permacomputing-oriented language for the purpose of creating 1st generation style 3D games and graphical user interfaces that work on constrained systems, microcontrollers, retro systems, and the web using emscripten.
Hello World
/**
* C-like syntax (WIP)
*/
function main(int argc, str[] argv) {
str name = "'u'";
if (argc > 1) {
name = argv[1];
}
pln("nuqneH, {name}?");
return 0;
}
Philosophy
- No dynamic memory - memory is static, stack only allocation.
- First-class arrays - Fortran-style, row-major.
- Plexes - Symbolic data containers.
- Tunnels - 9p inspired unified I/O: files, sockets, devices, APIs.
Development Timeline
| Milestone | Feature | Status |
|---|---|---|
| Pre Alpha | Primitive Types | Todo |
| Q16.16 fixed point Reals | Done | |
| Arithmetic Operations | Todo | |
| Memory allocator | Todo | |
| Webassembly Arch | Todo | |
| Proof of concept Paint program | Todo | |
| Alpha | Display Device | Todo |
| Arrays | Todo | |
| Plex Implementation | Todo | |
| Minimal Standard Library | Todo | |
| String Opcodes | Todo | |
| File Tunnel | Todo | |
| Beta | Fonts | Todo |
| Immediate mode UI | Todo | |
| Trigonometry Operations | Todo | |
| Unit of measure | Todo | |
| 3D Graphics Math/Primitives | Todo | |
| Gamepad/Joystick Device | Todo | |
| 3D Collision/Physics | Todo | |
| Proof of concept 3D platformer | Todo | |
| Sound Device | Todo | |
| Network Device | Todo | |
| Actor system | Todo | |
| Networked Tunnel Implementation | Todo | |
| Multiplayer Proof of concept 3D platformer | Todo | |
| Localization | Todo | |
| Test on Arch without FPU | Todo | |
| MMO Proof of concept | Todo | |
| Version 1.0 | Code Editor | Todo |
| Self hosted compiler | Todo | |
| Multithreaded actors | Todo |
Inspired by
Uxn, Plan 9, Dusk OS, C, Forth, Lisp, Fortran, Zig, Lua, Lox, Dis VM