January 25, 2024 - 4:00 pm CET

Strumenta Community – Panel Session

In the first Strumenta Community Panel Session, we will host the following speakers:

“The LionWeb Initiative” by Niko Stotz and Jos Warmer – slides

The LionWeb initiative defines protocols for communication between participating software components such as repositories, editors, and other clients. It facilitates the community-based development and reuse of language engineering and modeling tools on the web. In this talk, we’ll introduce LionWeb with a particular focus on integrating different technologies. We’ll start with an overview of LionWeb as a whole, our perspective on web-based modeling tools, why we’re working on it, who is involved, a little bit of history, and a sneak peek at some of the tools that are being developed in the vicinity. Then we’ll show how to exchange M2 and M1 models between different technologies and programming languages like MPS/Java, StarLasu/Kotlin, EMF/Xtend, and Freon/TypeScript. We’ll include projectional editors, parsers, fat clients, web environments, and more. We’ll wrap up the talk with a review of what we have achieved so far and an outline of concrete steps planned for 2024. Last but not least, we’ll discuss why you should participate in the initiative.

 

“The Chisel Method for writing parsers” by Federico Tomassetti – slides

In this presentation, we present the results of our reflections on building the best parsers we can. This means producing quality models, making them easy to consume by different users, testing them thoroughly, and documenting them appropriately. It also means ensuring that the process to develop them is as pleasant as possible. The result of these reflections is the Chisel Method and the supporting libraries and tools that make it possible to apply this method conveniently.

Among other points we will also discuss how the compatibility with LionWeb could play a role in making parsers built with this method more valuable for a larger audience. Demo outline: Most of the presentation will be covered by slides, but I also plan to introduce very short demos to demonstrate our testing tool, our parsing tool, and our documentation tool. If needed for the evaluation I can provide some preliminary screenshots and a more detailed outline.

“Implementing Symbol Resolution in StarLasu” by Lorenzo Addazi – slides

We know that symbol resolution is a necessary step when performing non-trivial code analysis. There are various approaches to implement it and designing a notation to express its rules as easily and understandably as possible remains a challenge. In this presentation, we share our experience in working on a symbol resolution framework to be used in StarLasu – a methodology promoting the development of language-processing tools, e.g. transpilers, compilers, interpreters and static analysis tools, as configurable pipelines through a collection of open- source runtime libraries in various programming languages, e.g. Kotlin, Python, Typescript and C#. First, we are going to illustrate how symbol resolvers can be implemented in StarLasu, i.e. how to represent references among nodes, how to specify language-specific resolution rules and what kind of support is provided. Then, a short open-source demo illustrating a symbol resolver for a simple entity language implemented using Kolasu in Kotlin will be provided.

How to join the event:

To avoid security issues is now necessary to register for the meeting. Follow these steps:

  1. Register yourself to the community on the Homepage
  2. You will receive a confirmation email containing the information regarding the event.
  3. Add to your calendar.
  4. Enjoy the talk and discuss it further on the community forum if you feel like it.