ergo
ergo copied to clipboard
Refactor backend module instantiation
It might be necessary/cleaner to instantiate the Q*cert modules for code generation before they are used in Ergo. This would freeze foreign types (e.g., for date/time) which means constructing type models is more natural. This concretely means:
- [x] Split the
Compilerdirectory into pre-JuraBackendand post-ErgoErgoCompilerparts - [ ] Import the
Backendinstead ofQcertin the Ergo part of the code - [x] Re-factor the built-in operators, CTO to model translation, etc to rely on the instantiated backend compiler
- [ ] Fix up of backend module types and definitions so it results in cleaner extracted code
A large part of this item is done in 1dfdc9d. Still further cleanup is needed and we can start to take advantage of the refactoring (for type import, standard library, etc).