Domain Specific Language

GLOSS - A GLSP Model Server on the Smalltalk Platform

Can Smalltalk serve as a modern platform for graphical modelling tools — and what does implementing the GLSP protocol reveal about its strengths and limitations?

These slides accompany the paper: GLOSS - A GLSP Model Server on the Smalltalk Platform

The Graphical Language Server Protocol (GLSP) extends the widely adopted Language Server Protocol into the graphical modelling domain, enabling web-based modelling clients to communicate with back-end model servers in a loosely coupled, standardised way. Existing reference implementations exist in Java and TypeScript, but no Smalltalk implementation existed at the outset of this project. Graham McLeod and Gareth Cox set out to build one — christened GLOSS (Graphical Language Object Server in Smalltalk) — using Pharo, and to evaluate how well GLSP maps to the architecture of the authors' existing EVA graphical modelling environment.

The paper documents the design and implementation of GLOSS, tracing the decisions made and challenges encountered, and provides a detailed architectural comparison between the GLSP approach and the EVA/GM system developed over two decades at Inspired. The comparison is striking: the Smalltalk implementation of a multi-model-type server supporting the full GLSP protocol runs to under 4,000 lines of code, compared to over 58,000 lines for the Java reference implementation of a single model type. Beyond code volume, the paper identifies nine concrete limitations in the current GLSP protocol — including the absence of model type support, server-side symbol management, and item reuse across models — and proposes specific remedies for each.

For practitioners working on modelling tools, architecture repositories, or graphical language design, this paper offers both a working proof of concept and a substantive critique of an emerging standard.

Originally published as a conference paper by Graham McLeod and Gareth Cox at the International Workshop on Smalltalk Technologies (IWST 2024), Lille, France, 2024.

An Advanced Meta-meta Model for Visual Language Design and Tooling

How can enterprise modelling tools be designed to support rapid, flexible visual language definition without requiring programming skills or costly redevelopment cycles?

These slides accompany the paper: An Advanced Meta-meta Model for Visual Language Design and Tooling

Visual languages are central to enterprise modelling — from ArchiMate and BPMN to UML and custom domain-specific notations — but the tools that support them have a persistent problem: they are built around fixed meta models and hard-coded notations, making it difficult to adapt them for new purposes, different stakeholder groups, or evolving modelling needs. The result is a chronic mismatch between what tools offer and what practitioners actually need, compounded by the high cost and skill requirements of extending or replacing those tools.

This paper addresses the problem at its root by presenting an advanced meta-meta model — the layer that governs how concepts, relationships, properties, and visual representations are defined within a modelling environment. The model supports arbitrary meta model definition, multiple simultaneous visual languages for the same semantic model, rich property types, multi-level modelling, run-time extension without coding, and polymetric diagramming (where visual properties like size and colour reflect underlying data). It targets a property graph implementation, which offers a more natural fit for the richly interconnected structures of enterprise modelling than traditional relational or object databases. The design draws critically on two decades of experience with the EVA toolset — cataloguing what works well and what its architecture cannot support — alongside a systematic review of Eclipse EMF, MetaEdit+, XModeler, RDF/OWL, and property graph systems.

For researchers and tool builders working on the next generation of enterprise modelling environments, this paper provides both a rigorous theoretical foundation and a practically motivated design.

Originally published as a journal article by Graham McLeod in the EMISA Journal (Enterprise Modelling and Information Systems Architectures), with a companion presentation at the Models at Work stream, PoEM 2022.