I'm poking around MPS looking to use it as a formula editing system (I see you have jetbrains.mps.formulaLanguage, cool!).
In looking at the editor functionality, I started a new model instance using the baseLanguage to mess with building expressions, and have a couple questions:
If I try to type a statement in a method:
3.5 + 4;
I have to 'auto-complete' non-terminals '<x.y>' before I can type in '3.5' and have it be recognized correctly - UGH! Strangely enough if I do:
double foo = 3.5 + 4;
the '3.5' gets recognized correctly by just typing it in directly.
Also, trying to add parens '(' ')' around an expression is really confusing, I can't just go to the beginning of the '3.5' and type a '(' and the end of the '4' and add a ')'.
It seems like a bit more free-form parsing would help a lot.
Furthermore - is there any way to limit the auto-complete to 'terminal' (vs non-terminal) choices? I think it's pretty confusing to an end-user writing in the DSL to filter out all the junk.