Hi,
I made a quick sketch on how I would like to see features/components structured. It is probably a bit too simplified, and does not consider the aspect of the textual notation.
To be able to see the pattern, I added two languages, C++ and Java. I made the assumption that there probably can be identified some common code generator framework which is language agnostic, and thus should be placed in some common component/feature. The same could be seen for the language agnostic aspect of the runtime, such as the runtime model library could be placed. And yes, the specific languages always have a dependency to those language agnostic "framework" or "infrastructure" parts.
So for those who would only do structure modeling could simply install the top level Papyrus RT Feature. And for those who want to to behavior modeling with code generation for C++ would install the C++ Language feature.
Probably the current code-generator and runtime is not structure liked this, since we only have C++ and thus the identification of any common parts between different languages have not been done (apart from identifying the language agonist run-time model library though). Correct me if I am wrong. I am not sure where the intermediate meta-model fits, but I guess that would actually fit the "Common Code Generator" feature/component.
/Peter Cigéhn