Better out-of-the-usability Follow
I'm sure, it is not very trivial to create such a new application and
make it usable for part-time users like me. Nevertheless, I recommend to
concentrate on the possibility to enhance existing languages like
Java. Who writes a new language from the scratch without a very indepth
At the moment I just have no clue, where to start. The tutorial is a
very basic starting point, but too far low-level and it does not really
teach the understandings. It misses major points like further
enhancements, extending the language, using different editors and so on.
I'm sure, it would be the best, if you could provide something small,
but usable very soon. It does not need to contains every feature you
want to implement, but it needs to be something which can be used for
When do you plan to make MPS a standalone tool (without IDEA running
in the back-ground)? Is there some major road-map (I don't need dates)?
Please sign in to leave a comment.
Thomas Singer (MoTJ) wrote:
We have CollectionLanguage and ModelQueryLanguage that extends
BaseLanguage. (They are located under %MPS_HOME%/collectionLanguage and
%MPS_HOME%/modelQueryLanguage). With current build we bundled sources of
our query methods (located under %MPS_HOME%/queries-src.zip) and now
you can look at then for examples of Queries(Aspects in previous builds)
methods. Of course it is not very usable now but we will provide more
documentation and more sample sources in next builds.
You can use MPS without IDEA right now, but it is much less usable than
Collection/modelQuery languages are in progress and far form completeness (please, don't try to use them now) but the work yields reach experience on languages integration.
There is no enough explicit support for development of java extensions in MPS yet.
I would suggest to start from some simple language, perhaps configuration language (like in the "agreement" language). Say, "ant language" of "log4J language".
Well, the problem is not that MPS currently does not support Java or XML
or whatever. From my perspective the problem is, that what it supports
is quite unusable, because the first-user barrier is much too high.
Why not first concentrate on one particular (hopefully useful) usecase
and extend it step by step? Although I'm no language expert, I'm
absolutely sure that changing a language better teaches MPS' power than
starting with a new language.
Thomas Singer (MoTJ) wrote:
Totaly agree: much too high. I don't really see how MPS will bring the
'promissed revolution' if it remains so complicated.
I'm totally agree too, but we don't have enough usecases to decide what usabilities needed and what are priorities.
So first choose one small that helps you and maybe us (e.g. some kind of
xml-xsl-editor/converter). At least you need to be able to use it to
solve some real-world problems.
yes, that make sense.
Does somebody out there have more concrete "small&reallife" required?
Exactly: an example for some real world problems. Not those abstract
math languages :).
I am trying to use MPS to create definition & editor for existing simple data structure & RPC interface definition language. It's private to my company, so I can't show you, but basically you can define structs and sub-structs with their own properties and optional default values. Each property itself can be required or optional. There's no code involved.
I thought I would try MPS with this example but even such a simple language appears too difficult. Maybe it would be a good subject of an MPS introductory article.