I would like to make a DSL available to other users. In which ways can this be achieved?
I read that one can create a stand-alone MPS which has the DSL prepackaged. Are there also other ways to distribute them? Is it possible to use the DSL somehow outside the MPS IDE?
Are there any tutorials on DSL packaging and distribution scenarios?
I was also wondering if it is possible to create something like a stand-alone executable. I would like to be able to pass a text-file to this executable where the content of the file is expected to confirm to the DSL's syntax. The executable generates the AST internally, runs the transformation engine and generates output at the end. The DSL is still developed in MPS itself. With this I want to:
- Support legacy textual scripts written in a specific DSL (the DSL itself has been ported to/reimplemented in MPS)
- Support the automated continuous integration process
Does MPS support automation scenarios in any way or can transformations only be triggered by users manually?