> Selfie is implemented in a single (!) file and kept minimal for simplicity. There is also a simple in-memory linker, a RISC-U disassembler, a garbage collector, L1 instruction and data caches, a profiler, and a debugger with replay as well as minimal operating system support in the form of RISC-V system calls built into the emulator and hypervisor. The garbage collector is conservative and even self-collecting. It may operate as library in the same address space as the mutator and/or as part of the emulator in the address space of the kernel.
I was a bit skeptical reading that, but I’m very impressed right now [2] . . .
[1]: https://github.com/cksystemsteaching/selfie/blob/5de675a0f08...
[2]: https://github.com/cksystemsteaching/selfie/blob/5de675a0f08...