Re:Taming OpenAPI using Racket to create a DSL
by jbreiding on Saturday August 17, 2019 @01:30PM
(#20725099)
I've always solved this with unit/functional tests. The test runner effectively acts as a compiler, for the purposes of checking the contact. in this process.
This is something that's baked into a gate check on merge to the source repo. Or rather it should be.
With Python there's normally no build step – you just run the program. Adding code generation means adding another step, which you might forget to run, leading to confusion. If you make the build step mandatory you lose some of the upside of dynamic languages.