For me, it is really an exciting project.
This project contains lots of different topics, and therefore it is not monotonous at all.
I have learned a lot with this project. I have discovered Verilog language, and I have learned how a compiler is made. This requires quite a lot of thinking.
The main goal of the project is to manage quite all the parts of a computer. I am proud of this aspect.
It is an old dream, which started when I was young: understanding in details all the part of one computer, and if possible build one by myself, from scratch, from A to Z.
I programmed in 3 different languages for this project: Verilog, C, and A2Z_Basic (my own invented language).
This project is quite big (for me), and therefore, it needs a good organisation. I needed to split it in small parts. This is a long project, which needs a lot of time and motivation.
But his project is feasible, even if it is long. Once it is split in several parts, each part is not so hard… except from the compiler which is the most complex part (for me).
Once a part is coded and debugged, you can often rely on it, almost forget it, and develop the new layer above. This stack of (relatively) simple layers makes a full computer. Of course, I often discovered some bug in one under layer, while developing the above layer. But I always came to a point where I can declare that one layer is reliable.
I am really proud of this project, and especially in developing it 100% by myself, as an autodidact, from A to Z.