Repository navigation
Wave v1.3.2
Wave is a Python-inspired language that transpiles to standard C++23 — write simple, expressive code and get native performance out the other end.
✨ Highlights
- Four-stage compiler pipeline — source is lexed into tokens, function calls and arguments are extracted, each keyword is translated against a JSON dictionary, and the result is assembled into clean, compilable C++.
- JSON-driven keyword dictionary (
cpp_dic/dic.json) — every built-in (print,println,sqrt,floor,ceil,abs,sin,cos,tan,asin,acos,atan, and more) maps to a C++ template and its required#include. Extending the language is just adding a JSON entry — no compiler changes needed. - One-command build — pass
--buildand Wave detects your OS, locates a compiler (MSVC on Windows viavswhere,g++on Linux), offers to install one if it's missing, and compiles straight to a native executable. - Zero-boilerplate output —
print("Hello, World!")becomes a complete, correctmain()with the right includes, so you never write C++ scaffolding by hand.
🛠 Under the hood
- Built on C++23, with CMake 4.2+ and Ninja presets for a fast, reproducible build.
- Uses CLI11 for argument parsing, fmt for colored terminal output, and glaze for JSON parsing.
cpp_dic/is copied alongside the built executable automatically, so Wave finds its dictionary regardless of working directory.
📦 Usage
wave examples/code.wave --build📄 License
GPLv3 — see LICENSE. Bundled third-party components retain their own licenses (THIRD_PARTY_NOTICES.md).
Full Changelog: https://github.com/VoidGriefedTeam/Wave/commits/v1.3.2