Keikaku documentation

The ANTLR + C Implementation and Packaging

Keikaku is implemented as an ANTLR grammar feeding a C interpreter, built with CMake and Makefile, packaged with Shell scripts, and supported by Python tooling. ANTLR turns .kei source into a syntax tree; the C core evaluates it and manages the runtime state the semantics require: suspended generator frames for yield/proceed, the caller/generator channel for transmit/receive, the injection path for disrupt, and the scheduling behind async/await, defer, and sleep. C is the natural choice for a portable interpreter targeting Linux, Windows, and Arch/Debian packaging; ANTLR keeps the front end declarative so effort concentrates on the runtime.

Distribution is a first-class part of the project. Arch Linux installs via makepkg -si from packaging/arch; Debian/Ubuntu/Kali via packaging/debian/install.sh; Windows via a Linux-to-.exe cross-compile (packaging/windows/build_exe.sh, requiring mingw-w64-gcc) producing keikaku.exe; and any other system via a universal CMake build (cmake .. && make && sudo make install). A GitHub Actions CI pipeline (ci.yml) backs the repository. Users run the interpreter as a REPL (keikaku) or execute a file (keikaku script.kei). The breadth of packaging, especially cross-compiling Windows binaries from Linux, shows the language was built to be installed and used, not merely compiled from source by its author.

Explore the research

Search projects, documentation, publications, and disclosures.