preloader
Glossary
Project Gallery

Welcome to the Jjodel Project Gallery, a curated showcase of domain-specific modeling languages built using the Jjodel platform. This gallery is designed to both inspire and instruct, offering a diverse collection of modeling scenarios ranging from entity-relationship diagrams to interactive state machines and algebraic DSLs. Each project is presented with a step-by-step construction guide, complete metamodels, and customized viewpoints, illustrating how the modular architecture of Jjodel supports flexible, transparent, and iterative language engineering. Whether you’re a student, educator, or researcher, this gallery provides practical insights and reusable templates to accelerate your modeling journey.

Expression Language (layout-sensitive notation)

The Expression Language is a concise domain-specific language (DSL) designed to model and evaluate arithmetic expressions using a positional concrete syntax. It captures numeric values and binary operations—such as addition and multiplication—where the spatial arrangement of elements in the model directly reflects their semantics. Rather than relying on conventional topological graphs, this DSL uses layout positioning to encode operator precedence and operand grouping, allowing intuitive, visual composition of expressions.

Key features include:

  • – A metamodel with classes like Expression, Binary Operation, Commutative Expression, Non Commutative ExpressionNumber, and Operator
  • – A concrete syntax that treats placement as meaning (e.g., operator between operands)
  • – Viewpoint logic to compute and propagate values dynamically
  • – Real-time simulation of evaluation results within the modeling environment

This DSL exemplifies the support for layout-sensitive notation, interactive feedback, and the clean separation of syntax, semantics, and computation. It’s ideal for illustrating modeling concepts such as observable properties, reactive and layour-sensitive semantics.

Entity Relationship Diagrams