Changelog
Major
- Replace the bytecode interpreter with ahead-of-time (AOT) compilation to standard C89.
- Previously, replace the AST interpreter with an IR-based interpreter.
- Add structures.
- Add arrays with indexed access.
- Add
forloops. - Replace procedures with functions.
- Implement
if-elseblocks. - Add bitwise operators.
- Simplify control flow by replacing
endif,endfor, andendwhilewith a singleendkeyword. - Change function parameter syntax to type-name style.
- Replace the
numbertype withint.
Minor
- Add built-in
shell()function. - Add built-in
sleep()function. - Add built-in
unix_time()function. - Add new examples.
Bugs
- Fix function parsing.
- Fix array element operations.
- Fix compiler file path handling.
- Apply numerous compiler fixes, optimizations, and stability improvements.
Community & Learning
- Contributions, issues, and discussions are welcome
- Learning materials and tutorials are available on the official website: https://cylium.site
Thanks
Thank you to everyone who shows interest, tests the language, reports issues, and contributes to the project.
Your feedback helps shape Cylium from the very beginning.
System Requirements
Cylium Сompiler 0.6.0 is available as precompiled binaries and has minimal system requirements.
(or compile it yourself for your system)
- Windows: Windows 10 or newer (x86_64)
- Linux: 64-bit systems with Linux kernel 3.10 or newer
- macOS: Intel-based macOS (x86_64)
Runs reliably on Apple Silicon via Rosetta 2
Executables compiled with the Cylium Compiler have minimal runtime requirements.
Since Cylium transpiles to standard C, the final system requirements depend on the C compiler used to build the generated source code.
Platform Notes
- Windows: The Cylium Compiler distribution already includes a C compiler, so no additional software is required to build executables out of the box.
- Linux: A C compiler such as GCC may need to be installed if it is not already available on your system.
- macOS: Clang and the Apple Developer Command Line Tools are required to compile the generated C code.