A lot of work has gone into the fifth Serenum release. Mostly in the direction of polish, clearing the path for release 6 to be feature packed. Here is a installation video for upgrading users. In no particular order the big items in this release are:
- The compiler has been completely rewritten. The compile-run cycle is 3 times faster. I emit machine code directly so there is no assemble step. The quality of the compiler output is a lot better since it now has a SSA-CFG backend and some basic optimization passes.
- Immutable by default filesystem semantics. There is a youtube demo of it here.
- Documentation for the system that can be read on device!
- There is now system time that survives reboots. It doesn’t tick while the device is turned off since there is no hardware RTC. But it is going to be useful nonetheless.
- The Brevis language had some siginificant changes, including the addition of a context similar but different to Odin and Jai.
I reimplemented all of the small utility programs while using Serenum. I find it very exciting that I can do more and more development only on Serenum. The ship deck expands. Future expansions I am now looking to make include:
- Internet access via wifi
- A Window Manager
- A Debugger
- Version Control System
- Replacement for cryptography infrastructure. (OpenSSL et al.)
- Replacement for DNS.