AToMPM / atompm

A Tool for Multi-Paradigm Modeling
https://atompm.github.io/
GNU Lesser General Public License v3.0
22 stars 15 forks source link

Standarize the changelog messages #150

Open BentleyJOakes opened 1 year ago

BentleyJOakes commented 1 year ago

AToMPM defines changelog messages to propagate model modifications. For example, adding/deleting/changing nodes or edges. These messages travel from the abstract syntax worker to the concrete syntax worker(s), and from there to the user's browser where they are used to change the canvas.

The issue is that this changelog format is not standarized. They are just dictionaries/arrays sent without a clean structure. This makes it difficult to understand the communication.

This proposal is to make a standard format for the changelog messages. For example, creating classes for each message type, such that the message type LOADMM has defined fields and error handling in the getters and setters for each field. This format would then be used on both the client and server side.

In the future, this format could also align with the Graphical Language Server Platform for better interoperability.