The arrival of GDPR has accelerated the attention for privacy. Who has access to what personal data of personal or clients?
Privacy, anonymization and data cleaning
The arrival of GDPR has accelerated the attention for privacy. Who has access to what personal data of personal or clients? How are personal data filtered from research data sets. How is internet traffic anonymized for detection of DDOS attacks?
In all these cases, there is a major gap between the legal requirements and their technical implementation.
We have designed and implemented Nescio, a domain-specific language for the description of anonymization policies. A policy describes which part of the data should be anonymized and how the sensitive parts should be hidden. The actual anomyzation is carried out by the Nescio implementation: it parses the data, finds the relevant parts in the data and anonymizes them.
- Impact
- Lawyers can formulate and review anonymization policies and they have a guarantee that the specified policy is actually implemented.
- See also
- Nescio Site
- We offer
- Tailored anonymization tools.


Forensic evidence is becoming more and more digital. Files on confiscated devices need to be analyzed and searched for relevant data.
Forensics and binary data analysis
Forensic evidence is becoming more and more digital. Files on confiscated devices (laptops, cameras, mobile phones) need to be analyzed and searched for relevant data. Unfortunately the amount of different data and message formats (jpeg, mpeg, word, pdf, …) is already overwhelming and rapidly growing. Manually implementing analysis tools for each format becomes prohibitive. Therefore we have created BIRD, a domain-specific language for describing and parsing binary data. From a description of a data format we automatically generate the corresponding parsing tool to analyze that specific data format.
An extensive overview of this approach is described in the dissertation by Jeroen van den Bos: Gathering Evidence: Model-driven software engineering in automated digital forensics.
- Impact
- Parse binary data, according to its format specification, without coding
- See also
- https://github.com/SWAT-engineering/bird/
- We offer
- Tailored tools for parsing binary data.


Today’s financial software is usually the result of decades of software development and evolution. That makes it hard to maintain.
Finance
Today’s financial software is usually the result of decades of software development and evolution. That makes it hard to maintain. That also makes it hard to guarantee functional and non-functional requirements. We have designed and implemented several domain-specific languages aiming at generation, coordination, querying and testing of financial products. They are characterized by: Complete separation of desired behaviour and implementation. Independent type checking, validation, verification and testing. Efficient code generation that integrates in target platforms.
For more details see Stoel, J, van der Storm, T, Vinju, J.J, & Bosman, J.W. (2016). Solving the bank with Rebel: on the design of the Rebel specification language and its application inside a bank. In ITSLE 2016 - Proceedings of the 1st Industry Track on Software Language Engineering, co-located with SPLASH 2016 (pp. 13–20).
- Impact
- Enable data analytics on data that could not be combined until now
- We offer
- Faster development of financial products with guaranteed functionality and behaviour
Based on mathematical modelling and stochastic simulation, we have built Seconds, a system for optimizing ambulance response times.
Healthcare logistics
- Impact
- Lives are saved by more timely ambulances
- See also
- https://www.stokhos.eu/
- We offer
- Turnkey projects that fit our technical profile.

Data analytics becomes enabled on all available business data
Domain Data Analytics on Polystores
- Impact
- Enable data analytics on data that could not be combined until now
- See also
- TYPHON project
- We offer
- Specialized, tailored, tools for data analytics on polystores



Improve the quality of embedded systems
Embedded systems
- Impact
- Maintainable embedded systems of higher quality
- We offer
- Tailored analysis of software systems in a variety of languages.
Toward a common, open-source, Web-native language workbench
Next Generation Parsing for the Internet (NGPI)
The success of the internet was enabled by the development of new languages and data formats. Classical examples are HTML/CSS/JSON; modern ones are TypeScript/WASM/JSX. Thus, language development has driven internet innovation. However, developing new languages requires big investments and expertise. It makes language development for the internet inaccessible to most. Our long-term vision is to change this by democratizing language development technology. In particular, the NGPI project reinvents parsing in JavaScript (JS): transforming strings into JS data structures—parse trees—crucial for syntax highlighting, linting, compilation, etc.
Current parser generators that target JS engines are really hard to learn/use. To overcome these limitations, the NGPI project builds the first such tool based on the expressive GLL algorithm. It supports a unique combination of context-free grammars, type-safe parse trees, and error recovery. This enables users to easily define grammars for their own languages, generate parsers in WASM, and integrate them in clients and servers alike. Beyond the internet, via LLVM, this technology is also repurposable for other instruction sets (e.g., x86-64).
- Impact
- Democratize parser generation technology for the internet
- We offer
- Extensive expertise on parsers, language workbenches, and tool building