Robotics DSL Zoo


We are constantly updating and extending the Robotics DSL Zoo and are waiting for your input!

All sources of this Robotics DSL Zoo are hosted in github in corlab/dslzoo. Fell free to fork the repository and make additions to the source files. Check github help on pull requests on how to request your changes to be added to the DSL Zoo website. Some guidelines to make it easier for you and us:


We impose some requirements for a publication to be added to the Robotics DSL Zoo. Please check, before adding a publication:

  1. Technical:
    The publication describes a domain-specific language or its usage. Only (meta-)models is not enough, we want to see at least some kind of syntax, grammar or language examples.
  2. Content-wise:
    Robotics is an interdisciplinary research field. In order to somehow limit the scope of this DSL zoo we introduced domain examples that describe the variability of the field and give us an idea of the subdomains that are relevant in robotics. Please check before adding a publication, if the discussed DSL belongs to one of these subdomains or provides support for one of the domain examples.

Workflow - Adding a Publication / DSL

The domain-specific language publications are collected in a BibTeX file, which is a common format to manage publication lists. If you want to make additions to the overall DSL Zoo, add a new entry to dslzoo.bib, including a 2-3 sentence summary of the core contribution.

  1. Go on github and fork the corlab/dslzoo repository.
  2. Add a new entry to dslzoo.bib of your fork. The format is:

    annote = {Your two to three sentence summary of the core contribution},
    author = {John Doe and Other Authors},
    booktitle = {International Conference on DSL Stuff},
    doi = {12.3456/DOI.1234.1234567},
    isbn = {978-1-2345-5678-9},
    keywords = {dsl-zoo, ...},
    month = jan,
    pages = {12--34},
    publisher = {IEEE},
    title = {Publication Title},
    url = {},
    year = {2016},
    zoo-subdomains = {Kinematics, Dynamics, Mechanisms and Actuation, Sensing and Estimation, Motion Planning, Motion Control, Force Control, Architectures and Programming, Reasoning Methods},
    zoo-ap-subdomains = {Concurrency, Control and Handling of Events, Data Persistence, Distribution of Components, Error and Exception Handling and Fault Tolerance, Interaction and Presentation, Security and Safety, Architectural Structures and Viewpoints, Architectural Styles, Design Patterns, Architecture Design Decisions, Families of Programs and Frameworks},
    zoo-phases = {Scenario Building, Functional Design, Platform Building, Capability Building, System Deployment, System Benchmarking, Product Deployment, Product Maintenance},
    zoo-tool = {DSL Tool / Workbench (e.g. 'EMF xtext')},
    zoo-website = {},
    zoo-download = {},

    There are a lot of free BibTeX tools out there to support you with this format, some of them might hide the zoo-specific custom fields though.

  3. After you added a publication, place a pull requests (preferably one for each publication) to corlab/dslzoo.

An important DSL is missing? Here is how to contribute! When using content of the Robotics DSL Zoo or referring to it, pleace consider citing our survey paper:

  author       = {Nordmann, Arne and Hochgeschwender, Nico and Wigand, Dennis Leroy and Wrede, Sebastian},
  journal      = {Journal of Software Engineering in Robotics (JOSER)},
  number       = {1},
  pages        = {75--99},
  title        = {{A Survey on Domain-Specific Modeling and Languages in Robotics}},
  volume       = {7},
  year         = {2016},

A. Nordmann, N. Hochgeschwender, D. Wigand and S. Wrede, “A Survey on Domain-Specific Modeling Languages in Robotics”, Journal of Software Engineering for Robotics (JOSER), 2016