Open CMCDragonkai opened 6 years ago
I have a feeling that studying how the web browser's DOM is implemented would be a good starting point as well. The DOM is basically a graph structure that is quite dynamic, supporting user-initiated updates and also updates from code. I'm interested in how the updates propagate changes to rendering.
Add support for the DOM to your browser. Focus on W3C DOM Level 1 and Level 2 first, since pretty much all current browsers support those completely. Then look at Level 3 and Level 4. The DOM is extremely fundamental to web programming, and so if you're going to actually build a modern web browser, it's entire design has to take this into consideration. Since you are writing the browser in C# you may want to take into consideration how you could leverage the existing .NET object model to your advantage. https://stackoverflow.com/a/15515561/582917
The scene graph and layout engines of Mozilla Servo may be quite interesting as well. Computer rendering field has probably done a lot of work here to take graphs and turn into some human usable output. In this case pretty graphics!
The convergence between Emergence configuration, Relay network and Architect expressions and Polykey is a distributed graph database.
We need to examine:
We need a graph database that supports sharding, replication, incremental processing, self adjusting computations, capable of reconfiguration due to operator demands (multi-player game) and also external world events. This step is to first make it work. Then we can make it fast according to our Prime project.