We generated GLVs with templates based on Groovy scripts and bound that into Maven so that changes to Java would immediately and automatically generate into the GLVs. We also did it that way to avoid a lot of typing in the initial creation of the GLVs as a lot of it is a bit boilerplate. Of course, now that the GLVs we have are established I wonder if the complexity that we have around the templates is still necessary.
1. The reality is that when Gremlin changes the code generation is only of help if the alternation is minor. More often, it means adding to the already complex templates and scripting system. 2. The templating system seems to confuse non-JVM developers who look to contribute to the GLVs. 3. We now have the GLV test suite which we didn't have when we started. The code generation was helpful because it ensured that the language stayed in synch and that we didn't leave out a step or token. It's arguable that we don't need that anymore since the test suite would capture such failures. Perhaps the best use of code generation right now would be with keeping the Enums in synch as the test suite may not cover all of those - of course that might point to a gap in testing. We could say that going forward all enums must be under test. I think this could be a chance for a good change in 3.5.0 to simplify the build a bit and drop the use of the template system going forward. If this is a bad idea for some reason, then what might we do to make the templating system better and easier to maintain?