buildat/doc/whynot.txt

21 lines
876 B
Plaintext

Reasons for not doing certain things
====================================
Why not use protobuf?
- It would suck for modules because it has many moving parts
Why not detect -DURHO3D_64BIT automatically in the build system?
- It's not possible
Why not use cereal's versioning system?
- It doesn't support forward compatibility
Why not allow making arbitrary number of instances of any module?
- It would make module reloading and management practically impossible, and it
would make module interoperability much harder to achieve. Creating a robust
but usable system for threading is also tricky. Also, it does not make that
much sense to run multiple worlds in a single server process because then all
would crash if one crashes.
- Instead there should be easy mechanisms for launching new server processes at
runtime, and routing clients to different processes.