Virtual Meetup: "Bridging the gap between textual and projectional: a proof of concept"

Hi Community,

I am happy to announce that today (the 11th of October), Alessio Stalla will hold the discussion about “Bridging the gap between textual and projectional: a proof of concept”.

You’ll find the Zoom link below!

Textual and projectional editors each have their advantages and disadvantages. Both users and developers know very well how to work with text. However, textual syntax limits our expressiveness, readability, and interactivity, among other things. On the other hand, projectional editors are still complicated to develop and use, even if we’ve made great progress, and text editing in projectional editors is not on par with our best text editors.
So, we present an innovative approach to editors, based on ProseMirror, a JavaScript toolkit for building web-based word processor applications. ProseMirror is well-suited for editing text out of the box, and it features an extensible schema of arbitrarily nested blocks with attributes. Built-in blocks include paragraphs, lists, and tables.
We’ll show an early prototype of an editor that is the result of a research and development effort by Strumenta, aimed at combining strong rich-text editing capabilities with a projectional approach. We’ll demonstrate how ProseMirror blocks can be hooked to a parser to provide some language intelligence, and how we can progressively migrate to a projectional approach where no parser is involved.

Alessio Stalla is a Language Engineer who designs and builds languages and supporting tools. Most of the time, you can find him crafting textual or projectional editors/IDEs, static analysis tools or model-to-model transformations. Also, between projects, he writes articles on Strumenta’s blog about what he’s learned. He is also the lead developer of the open-source web application framework, Portofino. He contributed to ABCL, the Common Lisp implementation on the JVM, and marginally to the Groovy language. He knows the JVM ecosystem quite deeply and routinely and actively participates in the local Java User Group and follows several JVM development mailing lists. In the past, he has designed and implemented Java enterprise applications using a variety of technologies, including Spring and JEE applications, Alfresco customizations, Liferay portlets and extensions, Camel/ServiceMix, BPMN engines, and more.

How to connect

To avoid other security issues is now necessary to register for the meeting. The registration should be necessary just once and be valid for all the next meetings you will participate in. I understand it is a little extra effort, but it would avoid problems like the ones we encountered:

Registration for the Virtual Meetup

After registering, you will receive a confirmation email containing information about joining the meeting. It will also permit you to add it to your calendar.


It is hosted on Zoom at 5 PM GMT+2/CEST (you can use this link to figure out which time is in your timezone: Dateful Time Zone Converter).