Language usage and quotation

Is it everything right with necessity to use language in editor aspect when i need to quote something somewhere in element factory? Why it isn't enough to introduce dependency on structure aspect?
5 comments
Why it isn't enough to introduce dependency on structure aspect?


Because <quotation> is an embedded fragment written in your language and therefore it uses all it's feature - structure, editors, behavior, typesystem, etc.

Is it everything right with necessity to use language in editor aspect


If you want to workaround, use smodel language (node<> API) or builders language. If you use <quotation> of your language in it's editor aspect, you cant compile your language from scratch (in quotations you're able to use your language from previous compilation).
0
Thanks! But whether MPS is not smart enough to compile language in
such an order that all dependencies are processed in right order,
providing right bootstrapping of the language (so, dependencies are
topologically sorted)?
--
Andrew Zabavnikov
0
Minimal compilation unit in MPS is model. So you can't say "Lang1.Editor_XXX depends on Lang1.Editor_YYY". You only say that "Lang1.Editor uses Lang1", which in it's turn depends on Lang1.Editor.
0
Yep, but the question is not about that. Can you confirm that MPS actually uses previous version of your language in quotation?
0
It's not about order of compilation/generation, but about dependency model used in MPS. For now, the model is not descriptive enough to correctly handle the quotations-language dependency type, which is actually quite tricky.
The trick is: "I want to use the language, but want to treat concept instances not as instances, but rather as references to those concepts". There's no a dependency type in MPS now which could handle this case.
0

Please sign in to leave a comment.