We got a very successful meeting, with over 50 persons showing up!
Here are some the questions and comments from the chat
@Gregorio : Do you know of anyone working on a DSL for smart contracts to run in Etherium?
No, but it would be very interesting
@rafael and others : Any support for web-based DSLs?
At the moment MPS does not support editing on the web, however:
- You can still generate web applications from MPS
- There are open-source projects to help on this Modelix (created by @slisson and @voelter) and MPSServer + WebEditKit (started at Strumenta)
@velulev : Are there any public information about the Siemens MPS application for contracts? Like a case study, or something else on the web.
Not that we know, but maybe @ratiud knows more about this.
From J. Pablo Caballero : You mentiened it’s only Java. Does it have, or will it have Kotlin support?
@smmribeiro Just a side note: i2S Insurance Knowledge has an MPS based tool where the actuaries from an insurance company can design and test the rules for an insurace contract
I would love to hear more about this
@fniephaus Have you looked into integrating language implementation frameworks, such as RPython or Truffle? That would allow language-agnostic tooling
No, but generating code using this framework should be possible
@HermanPeeren You could combine MPS with ANTLR if you want some other target language…
This is an advanced topic. One could take advantage of custom persistence but depending on the level of support you want in the editor this could be a good amount of work. @vaclav.pech cited that there have been some experiments on this and I wrote a basic article about this some years ago
@HermanPeeren Because of the way MPS defines a language you probably cannot export a BNF-grammar?
Exactly: first of all many languages are not text-only but they contain other notations (table, diagrams, etc). In any case one could build in MPS languages that cannot be parsed because of ambiguity. This is not a problem in MPS as there is no parsing happening. MPS stores the AST directly.
@mrtnstn How do you deal with positional info in a graphical editor, as this is usually not in the AST?
You can save the position in the AST and not show it, when using a textual position. Or you could use automatic layout
From Devendra Rane : Can MPS spit out the parser code… such that I can write the DSL and I get the Java code… outside the editor?
Well no. One could try do process the editors definition but it would not be trivial and it would be brittle. One can also implement custom persistence and invert the problem, but this is an advanced topic
From Felix Gast : Is it easy to collaborate with others within MPS, something like git?
Yes, MPS supports Git
From edward : a very clear presentation of a very complicated tool. I have heard about MPS for a while, but nobody ever could explain how it was used so clearly before. Bravo!
@thiago.rs Can you please comment on the learning curve (and ease of use) for novices compared to Xtext?
Vaclav confirmed there is quite a learning curve
From edward : How many lines/words of code is MPS? It must be huge?
It is huge but it is also open-source, you can check it: https://github.com/jetbrains/mps
From Nesrine Khouzami : Generating C++ with MPS was a cumbersome task for us
From Antonio Moratilla : It’s been a great presentation, thank you
@bruce.trask: are there any gui framework used under the hood?
Swing: one could build all sort of extensions using Swing. It requires some experience but it is possible
@thiago.rs : Thank you very much! It was really good!
From J. Pablo Caballero : This was fantastic. Thank you Vaclav and Federico!
19:10:17 From Bruce Trask : thanks!
19:10:22 From Greg Jarmiolowski : amazing technology! thank you for sharing it and your enthusiasm
19:10:38 From Felix Gast : Thank you !
**19:10:40 From Jan Vladimir Mostert : thanks for this! **
19:10:43 From Drazen : Thanks for sharing, was really interesting!
19:10:44 From Coding School : Thank you
19:11:11 From Jason Coleman : Nice presentation. I have a clear direction to learning more. Thanks.
19:11:19 From Velu Mani : Thanks Vaclav and Federico, it was very interesting & also useful.
19:11:31 From Isabel Azevedo : Thanks
19:11:32 From Adarsh Khanna : Thank you
19:11:38 From Nesrine Khouzami : Thanks
19:11:38 From Paula Munoz Ariza : Thank you!
19:11:44 From Fabio Niephaus : Thank you!
19:11:45 From Coding School : Can you share the presenation ?
19:11:46 From Alexandre Bragança : thank you
19:11:47 From Coding School : thanks
19:11:50 From Antonio Moratilla : bye
19:12:12 From Pedro J. Molina : Thsnk you!
19:12:13 From Coding School : thanks