The Brevis Programming Language Has Self Hosted

In July of 2022 I had developed my OS prototype far enough that it was time for a compiler. I needed a compiler in order to start using the system. Keeping with the spirit of 100 % authorship and control over the user experience I didn’t want to port something like gcc. Writing my own compiler would be more suiting. And since a compiler for a made up language is both simpler and easier to write than a C compiler, I created a new language. Unlike most new languages it is very different since I want to try out new ideas I think might be good.

As of the eigth of January 2022 A. D. the language is self hosted. Version two of the compiler written in the language was finally able to compile itself. Version two has less bugs than the first and therefore I have deleted the C implemented compiler. Now the bird flies on it’s own.

This is not a formal launch or anything since I still have some things to do. Namely that I broke relative pointers and never implemented multiple return values. These both bring with them significant character and I want to make sure they are done right before suggesting anyone try use it.

If you want to try it anyway you can do so by getting the current latest version at https://git.sr.ht/~samhsmith/lingua_brevis. Execute the below commands in order to build the compiler executable.

cp assembler_aureus_compilātri.asm asm/custom_code.asm
sh build.sh
cp asm/a.out brevis_compiler

./brevis_compiler compīlātrum.lbc  <- this will produce the assembly inside assembler_aureus_compilātri.asm