Domain-specific languages (DSLs, or “little languages” as they’re sometimes known) can have great benefits for making your source code more readable, correct, and maintainable and overall provide improvements to the efficiency of the whole team. Everybody has seen and used DSLs before, be it good old SQL, or languages like Docker, Kubernetes, Fn Flow, Terraform, or GraphQL. But isn’t it difficult to build and maintain your own language?
6.30pm - Doors open
6.45pm - Rolling Your Own: Domain-Specific Languages in Java (approx 90 minutes)
7.30pm - Break
7.50pm - Talk continues
8.35pm - Finish
In this talk, Dr Steffen Zschaler hopes to convince you otherwise. Through a series of live-coding examples, we will explore different ways of building helpful DSLs quickly. We will start by looking at how to use fluent interfaces for your APIs to build a simple DSL directly embedded in your Java code. While this makes for great readability, we will soon reach the limits of this particular technique. We will then look at building our own DSL outside of Java, complete with IDE integration and translation into full-blown Java code. We will use the Xtext language workbench, which makes it easy to get our DSL off the ground quickly, get great IDE integration with a minimum amount of work, and maintain all of the language definition in a standard Git repository.
YOU MAY ALSO LIKE:
- Building a Cloud Native Application with Quarkus (in Online Event on 27th August 2020)
- How to use Apache Kafka and Grafana to visualise business process decisions running on the cloud! - Paulo Menon, Ingo Weiss, Craig Reeves. (SkillsCast recorded in October 2019)
- Don’t keep it to yourself - openness and honesty in the workplace (SkillsCast recorded in October 2019)
Rolling Your Own: Domain-Specific Languages in Java
Dr Steffen Zschaler is a senior lecturer in computer science at King’s College London. He has been researching domain-specific languages, software modelling, and code generation for almost 20 years and has built a number of tools as well as developing foundational theory. Steffen is always looking to convert people to the benefits of using domain-specific languages as part of their development workflow and is happy to discuss this at length with or without drinks at hand.