Philosophy - hpgDesigns/hpgdesigns-dev.io GitHub Wiki
A lot of important design decisions go into the development of ENIGMA. This page serves to link to the reasoning behind different features of the design of ENIGMA and its sister projects.
If you would like to know more about any design decision, please add a redlink under the appropriate category. Developers and other informed parties will populate the pages as needed.
Compiler
- Philosophy:JDI: Why use JDI for storing and reading definitions?
Engine
- Philosophy:Systems folders: Why are the contents of SHELL partitioned as they are?
- Philosophy:Extensions: What constitutes an extension? Why does this system exist?
IDE
- Philosophy:Translations: Why use a translation key system instead of the typical GNU approach of looking up the English string?
- Philosophy:Serialization: Why use a serializer interface? Why is the system set up the way it is?