Open
Milestone
started on Sep 25, 2024
DkCoder projects can optionally add version modules with backwards compatibility
Something like:
- If
DkHelloScript_Std.V2is the latest version, then author can writeDkHelloScript_Std.V1to be backwards-compatible wrapper ofDkHelloScript_Std.V2. - Can be
V<semantic versionsoV1is major version 1. - Auto-generated:
DkHelloScript_Std.V1_is the latest major version 1, andDkHelloScript_Std.V_is latest of all versions.
It would be nice if the initial V1 does not require a V1/ subdirectory. Instead, have a special module versions__.ml that implements all of the concrete versions (ex. V1 and V2) in terms of the current library's source code. But the library signature for a given version needs to be available for separate compilation (speed!) ... they cannot be inferred from the .mli of the library tree. So, we do need V1/ and V2/ directories containing only the .mli if versions__.ml is defined.
Logic is centered in LibraryOutlines0.of_module_units
Loading
Loading
Loading
Loading