[Research] Can I use MPS to accomplish making my own DSL for expense tracking?

Hi there, 

I am new to the world of DSL and the like. A month ago, I came across Federico Tomassetti blog on DSL. I bought a bunch of books based on his recommendations

The project I chose was to create my own DSL to track expenses.

I got to the point where I manage to create my own parser See the screenshots at the bottom of this SO question. https://stackoverflow.com/q/46872931/80353

However, I am at the point where I am slightly lost as to how to continue.

While googling, I came across your community threads on MPS and I recall Tomassetti mentioning this before. I am okay to start from scratch. Basically I am looking to see if I can create a DSL where people simply type in DSL instructions or perform some other kind of action with the DSL that results in generating excel files with some data mentioned in the DSL.

My main purpose is to learn DSL not so much as creating an actual expense tracker ( i can do this using my knowledge of Django and web app development in general) I purposely chose this topic to narrow my scope for learning that's all.

My question is assuming I am looking to build this expense tracker DSL using MPS how do I go about it? Is there any change in the scope so that I can do this with MPS?

Comment actions Permalink

Yes, this definitely is a task for MPS, although you'll have to start from scratch, since MPS does not use parsers but projectional editors.

I recommend you to start at https://confluence.jetbrains.com/display/MPSD20172/Fast+Track+to+MPS to learn how MPS works.



Comment actions Permalink

HI Vaclav, 


Thanks for reply.


Almost all the videos seem to have a different UI UX compared with intelliJ IDEA CE 2017.2.5


I think I manage to install the MPS plugins but not sure how to get started per se.


Example this video appears to be using some sample project https://www.youtube.com/watch?v=5dldSNaibrA&feature=youtu.be


whereas mine after i create a new Java project looks like this:



Can help me roughly understand how to adapt your current documentation on fast track with MPS while still able to use the CE version?

Thank you

Comment actions Permalink

You need to install MPS, not IntelliJ IDEA. These are two different tools. MPS is a language workbench, while IDEA is a Java IDE.



Comment actions Permalink

Oh I see now. I realise I made a mistake. Apologies about this. 

Thank you for your patience.


Please sign in to leave a comment.