Language Review
Hi again,
to discuss a language structure and other aspects in the team it would be nice if one could export it as kind of a "concept diagram" (maybe comparable to UML class diagram). Is there any way to do this?
Thank you in advance,
LaAck
to discuss a language structure and other aspects in the team it would be nice if one could export it as kind of a "concept diagram" (maybe comparable to UML class diagram). Is there any way to do this?
Thank you in advance,
LaAck
Please sign in to leave a comment.
I use the plantuml plugin which comes with mbeddr to visualize the models, which I can build with my language. I guess its not so much effort to use this technology to implement a language overview as UML class diagram. Unfortunately you can't use the visualization framework without installing the whole mbeddr platform at the moment. I have already filed this issue: https://github.com/mbeddr/mbeddr.core/issues/643
You can see the plantuml features of mbeddr in this video: https://www.youtube.com/watch?v=QjwXITp6fwg
However I think that reviewing the language structure would be much easier with a more expressive graphical visualization. It does not necessarly need to be UML, though it would be no problem to map most of the paradigms of the language structure to a class diagram. But at least the interfaces could be a challange since in MPS they seem to have more semantics than in UML (e.g. parent-child relations).
Ok, I have one question to model visualization using mbeddr. Did I unterstand right, that you create models using a language defined in MPS and somehow import them into mbeddr? Or do you import your language into mbeddr (I don't know much about mbeddr, yet).
Thank you again in advance!
If you create your own diagram syntax you have to build all the visualization stuff from scratch.
To use the mbeddr plantuml bindings you have to install the mbeddr platform plugins first. Now you will find a concept interface IVisualizable and the class VisGraph in the modules pool. The concept of each node, which should be visualizable, must implement the IVisualizable interface. This will create context menu entry in the editor. A special VisGraph class must be created to collect the information from the AST and serialize them into a proper string with plantuml syntax.
I would support such a project, because I would like to have such diagrams for documentation, too. But it would be great if the mbeddr developers could provide a modular plantuml plugin. Otherwise we would have to fork the whole mbeddr project. Is any mbeddr developer around here?
https://github.com/mbeddr/mbeddr.core/releases
contains a plugin for plantuml. YOu can visualize any diagram you
want simple by creating the plantuml string from your model.
See here:
http://mbeddr.wordpress.com/2013/02/14/visualizations-reloaded/
Thanks for your attention! The plugin works quite good but it is unfortunately packed with all the other mbeddr stuff, which is a big overhead just for a visualization. I've had a closer look to the dependencies of com.mbeddr.plantuml.pluginSolution. It depends on com.mbeddr.core.base just because of the concept IVisualizable and the classes VisGraph and MbeddrURLHelper. Only the latter one seems to be used for something else than for visualization. But I guess it will not waste the structure of your project if you move these concept and classes to a particular language and provide it together with the pluginSolution in a ZIP file.
Of course I could fork mbeddr. But I think it will be hard to join these structural changes after a while.
It would be great if you could help us with this problem!
So you either have to use the mbeddr.platform and ignore the stuff you don't need, or you'll have to fork.
Sorry.
Markus
thanks for your reply and the hints. I will try mbeddr with the plantuml plugin you mentioned.
Regards,
LaAck