We should make one language extension to end all language extensions. That is a sublanguage feature, a syntactic contruction to let you embed regions of other languages into java and specify a compiler extension and an editor syntax coloring extension, debug facilities extensions, code completion extensions that seamlessly let you develop in the sublanguage.
Examples of possible sublanguages: multiline strings, jsp, new loop contructs, domain specific languages, JavaFX, ... some are very simple some extremely complex.
When the competing language Cx develops a new language, the java community could develop a similar extension and developer tool support within weeks, because the extension is optional and severel versions could coexist there would be no need to take it through a commttee.
Think of what the simple language extension mecanism annotations have done. What would be possible with this hyper generic extension mecanism? |