Notes on versioning Domain Specific Languages
Those are just a few topics that I feel are important for discussion when talking about versioning DSL:
- Different behavior at runtime
- API vs. Syntax
- Different dialects
- Backward and forward Compatibility
- Pros:
- Keeping existing assets
- Training
- Knowledge
- The Test of Fire
- Cons:
- Increased costs
- Harder to change
- Preparing for versioning:
- Syntax Documentation
- Closed world - control what you can access
- Limit to a scenario
- Versioning strategies:
- The Holy Compatibility
- Build & abandon
- Version marker
- The Big Upgrade
Thoughts?