Undâr Programming Language

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


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