[ 309 ]
Integrating It All
In this final chapter, we will build a fully functioning DSL and integrate it into a
web application. In doing so, we will cover the issues you will encounter when
integrating your own DSLs into existing applications. The DSL we will look at is a
proof of concept DSL that implements a simple state machine style game engine with
server-side engine logic, which supports a HTML user interface.
- The DSL was written to support teaching Groovy, so we will start by
looking at how we can use DSL techniques to help with teaching
programming to kids - We will see how those ideas evolved into the proof of concept game engine
DSL we will build in this chapter - We will look at how we can structure the game engine as a pattern of Groovy
classes and then see how we can implement an AST transform to generate
that pattern - We will see how we can integrate the DSL into a spring boot game server
with a MongoDB session store - Finally, we will build a simple mobile UI for the game with HTML5 and
jQuery Mobile
Groovy as a teaching language
I've had the wonderful opportunity in the last year to be involved with the
CoderDojo Foundation via my local CoderDojo. CoderDojo is a global movement
of free volunteer-led, community-based programming clubs for young people at
https://coderdojo.com. I joined Wexford CoderDojo as a mentor in January 2015.