This is a prototype compiler of the Requite programming language, completed in in a few months in the Summer of 2024. The language has evolved significantly since then.
- Read source files
- Parse abstract syntax tree for each file
- Catalogue types and functions (so there is no need for forward declarations later)
- Build ir with LLVM
- Output intermediate files with LLVM.
This compiler has no linker. To link output object files, you need to use another compiler such as Clang.
Example files can be found in the test_sources folder. There are no command line options yet, and all configuration should be done by changing the C++ source code in <src/main.cpp>. When running the test source files, make sure that there is only one entry_point operation across all source files. Some files contain definitions used by other sources, so you need to compile them together. For further instructions, look at the <test_sources/test.bash> file.