Domain-Specific Languages
your experts and your AI can both read

A DSL captures your domain precisely enough that a domain expert can read it and a machine can check it. We design and build the whole thing: the language, the editor, the validator, and the generators that turn it into running code.

Benefits

A DSL narrows a domain down to what actually varies. That makes the rules explicit instead of buried in code, gives the people who own those rules a way to change them safely, and gives you a validator that mechanically rejects what is wrong.
Rules your domain experts can change

The people who own the rules edit them directly, in vocabulary they already use, instead of queuing behind a development team for every variation.

Mistakes caught by a parser, not in production
A DSL ships with a validator. Invalid input is rejected before it runs, and the error is phrased in domain terms rather than as a stack trace.

Less code to write and to own

One language plus a deterministic generator replaces the hand-written variations underneath it. Fewer lines to maintain, and they stay consistent by construction.

Where AI fits

LLMs made code cheap to produce. They did not make it cheap to trust: the generated diff still has to be understood by someone, and that review is now the bottleneck. A DSL changes the economics on both sides of that problem.

A smaller target for the model

A general-purpose language offers dozens of valid ways to express the same intent. A DSL strips that variation away, so a handful of examples of your language is enough for a model to produce correct output.

A validator that can say no

Because a DSL has a parser and a type system, generated output that breaks your domain rules is rejected mechanically — and the error is specific enough that the agent can repair it without a human in the loop.

Review intent, not diffs

Twenty lines of DSL that a domain expert can read and approve, instead of five thousand lines of implementation that nobody has time to check properly.

The prompt is disposable. The DSL and the semantic model behind it are the asset that stays. This works as long as the language stays genuinely small and constrained — keeping it that way is the hard part, and it is the part we do.

Our Approach

We start from your domain, not from a technology choice. We work with your experts to find the concepts that actually vary, design a language around them, and build what makes it usable in practice: editor support, validation, and generators that produce code you can ship. We use ANTLR, Langium, JetBrains MPS and our own open-source tooling, choosing per project rather than per habit.

BEFORE

Without the DSL

Frame 19 (18)
Marketers
Marketers spend a fair amount of time studying the data and coming up with new promotion. One thing they have learned is that targeted promotion is the key: each kind of customer respond to different kinds of offers. Some of them just want discounts, others value free-shipping a lot. So Marketers devise more and more of these promotions and each time they have to run to developers to ask them to implement those.
Frame 19 (19)
Developers
Developers get a steady stream of small promotion requests. Each one is tedious, each one is slightly different, and every so often one of them goes wrong on the live store — which is an expensive kind of mistake. On top of that, the requirements arrive half-specified, so every promotion costs a few rounds of back and forth before it is right.

AFTER

With the DSL

Frame 19 (20)
Marketers
Marketers define promotions themselves in a small DSL, with far more control than a configuration panel would give them. They can simulate a promotion before it goes live and see what it would have paid out on real data. As the promotions get more sophisticated, the language earns its keep rather than running out of room.
Frame 19 (21)
Developers
Developers can now focus on more interesting tasks. At the beginning they helped marketers learn the DSL but now that marketers are independent developers can focus on improving the platform, improving performance and the rest of programming tasks they like so much more than writing another promotion for diapers targeted at mothers between 20 and 30 years old living in Idaho.

Why choose Strumenta?

Frame 19 (22)
Strumenta methodology
Over time, we developed our specific methodology and created open-source libraries, analysis tools, and reusable components that put us in a condition to serve our clients better.
Frame 19 (23)
Project success
We succeed in what we do because we follow your needs from the beginning. From the first meeting, we will support you and advise on the best solution for you, putting you in a condition to understand the process.
Frame 19 (5)
Years of experience
We are experts in Language Engineering. We have been building parsers, transpilers, code generators and DSLs for more than twenty years, and we publish what we learn: our writing on language engineering is read by tens of thousands of developers every month.

Ready to transform the way you develop software?

Tell us about the domain you are trying to tame. We will tell you honestly whether a DSL is the right answer for it.
Scroll to Top