I’m a professional software engineer and work with the general purpose programming languages (e.g. Python). However, I have a strong interest in holistic programmable systems which encompass all aspects of programming and use. I prefer to think of these as ‘systems’ where any language, UI, views and workflows are designed in tandem with each other. I consider this ‘casual research’ and I occasionally write about my ideas and positions at https://shalabh.com/programmable-systems/.
Relevant to this community: I’m particularly interested in the ideas of projectional, live and interactive programming. I’m looking for ideas on how to make these feasible and usable when implemented at scale.
It seems us Python programmers have fewer options than the C and Java communities do.
Checkout TextX by @igor.dejanovic .
I’m (slowly, very slowly) attempting to add some sort of Python support for MPS.
Yes, textX is super interesting and the Python world seems getting more and more exciting also for language engineers
You may be both interested in an episode of “beyond parsing” (a podcast on language engineering) I and @sergej recorded with @igor.dejanovic . It is currently in post-production and I will post about it in this community when we release it
Thanks @iandrich and @ftomassetti for mentioning textX. I started the project but I’m not the sole author anymore.
@pierre.bayerl joined the project two years ago and did a great job on multi-metamodel support and custom scope providers. So, now you can define multiple languages which reference each other. Due to a possibility to define custom reference resolvers, you can even make references to elements in non-textX languages!
If you need more of a Language Workbench experience, @daniel.elero is doing a great work on providing Language Server Protocol and integration with VS Code editor for all textX-based languages.
We are in the process of preparing a demo proposal for LangDev.
If you need integration to ECore and EMF ecosystem you can take a look at pyecore by Vincent Aranega . A while back Vincent also did an integration with textX, although it is currently based on an older version of textX.
@ftomassetti BTW, I see now that Vincent is not here. I think he would be interested to join.
It would be great to have him, could you point him to the form to join the community at https://strumenta.community ?
Great to hear that!
We need to see more language workbenches at LangDev, in my opinion
I’ve just send him an email.