Thursday, July 20, 2023

Finally took another look at MPS after years in Eclipse Ecosystem

 In 2007, i attended a No Fluff Just Stuff conference where Neal Ford did a presentation on Domain Specific Modeling.  I was mesmerized.  From that day, I decided to learn what I could about this discipline in an attempt to raise my levels of power and productivity.  

Anyway, for some reason, I decided that I would try to use the Eclipse Modeling tools for DSL generation instead of MPS.  It may have been because I had tried doing Eclipse RCP and EMF as early as 2003 and the eclipse ecosystem seemed like the place to be.

Eclipse was an exciting ecosystem for quite some time.  The guys at Itemis and Sven Efftinge developed XText and XBase -- it was great.! Eventually though, I moved off Eclipse as IDE to IntelliJ and by then working in Eclipse seemed like a forked effort.  I wrote some integrations with projects like Papyrus but documentation was always hard to come by.

15 years pass and I come across this post from Markus Volter

https://www.youtube.com/watch?v=R6uoaxVV_2s


Amazing!  AND there is literally tons of documentation and videos out there on this!

This actually makes quite a lot of sense.  ChatGPT should be able to learn a simpler DSL language vs general purpose language.  Which leads to interesting equations

Developer -->. Force Multiplier 1 (DSL) ---> Force Multiplier 2 (ChatGPT). 

In other words, if you can first get DSL to write code for you (Code Generator approach) and then get ChatGPT to write code that writes code, it should prove to have a positive effect on productivity.

More to come!..   Kind of wish i had followed Neal into the MPS world but I guess I finally got here.

Update 7/22/2023 - I would highly suggest taking the JetBrains MPS for the Impatient Course.  Mind blowing how much is packed into this product.

https://cogniterra.org/course/28










No comments: