Leanpub Header

Skip to main content

Nasdanika SDK Runtime - Groovy DSL

Models as Scripts, with a DSL for Every EMF Metamodel

Nasdanika SDK Runtime - Groovy DSL
This book is 100% completeLast updated on 2026-11-10

Write EMF models and metamodels as Groovy scripts, with a DSL derived from any metamodel by reflection: no grammar, no parser and no code generator to maintain.

Minimum price

Free!

$8.97

You pay

Author earns

$

Also available for 1 book credit with a Reader Membership

PDF
EPUB
About

About

About the Book

A model has to be written down somewhere, and every way of writing it down has a cost. XMI is exact and written for machines. YAML and JSON are friendlier, but they are data: no variables, no loops, no computation. Diagrams suit some models and not a model of four hundred rules. Generated editors are good for changing one element and poor for seeing the whole or reviewing a change.

A Groovy script that builds a model reads like a structured document, braces for containment and a call for each feature, and it is also a program. It can name things and refer to them with variables, repeat and compute, derive a model from a diagram, a spreadsheet or another model, and decide what saving the model means. It is text, so it is diffed, reviewed and merged like code.

One DSL for every metamodel

This book describes the Groovy module of the Nasdanika SDK Runtime, which loads a file such as library.ecore.groovy as an EMF resource. The language is derived from the metamodel by reflection when the script loads: every concrete class is a keyword, every feature is a call, and containment is nesting. Bind it to Ecore and you write metamodels; bind it to a rules or architecture metamodel and you write rule sets or architectures. Change the metamodel and the language follows on the next load, with no grammar, parser or code generator.

  • The language: entry points, three ways to set a feature, variables and what a script produces.
  • References by path, closure or variable, with names of classifiers and global objects.
  • Deriving models from other resources, iterating them and copying prototypes.
  • Saving: scripts that write themselves back, and the truncation trap to avoid.
  • Errors and telemetry that point to the line of the script.
  • A DSL for your own metamodel in two classes, with rule sets, handlers, capability factories and resolvers.

Who it is for

  • Modelers who would rather write a model than click it together or read it as XMI.
  • Developers who derive models from other models, diagrams, spreadsheets or systems, and want the derivation to be a file next to the model.
  • Tool builders who want a textual surface for their metamodel without writing a language.

How it keeps you honest

Every listing is included from the module's sources, tests or test scripts and runs when the book is built. The book says plainly that a script model is a program that runs when it loads, so load scripts only from sources you trust. Status labels mark what is PLANNED.

This is a Nasdanika Zephyr Book, an in-depth manual for one module of the Nasdanika SDK Runtime, and it stands on its own. The code needs Java 25 and brings Apache Groovy 5; some familiarity with EMF helps. The text is licensed under CC BY 4.0 and the code under EPL-2.0.

Share this book

License

Creative Commons Attribution 4.0 International License

Author

About the Author

Pavel Vlasov

Over 30 years of experience in Information Technology with 25 of them in the Financial Services industry, which includes 20 years in banking.

Model-Based Systems Engineering, Java, Architecture As Code

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub