Options for DSLs on the JVM
What are the various options for building DSLs on the JVM and how can you choose the best one for your next project?
In this fast paced session we'll look at a range of techniques for building DSLs. From Java and Groovy expression builders to Scala metaprogramming, the strengths and weaknesses of XML for external DSLs and fully featured approaches to external DSL development such as XText and ANTLR. We'll also look at practical issues such as DSL evolution, and IDE support and the relative benefits of each approach for different types of problems.
About Peter Bell
Peter is an evangelist and hacker for hackNY - a not-for-profit that aims to federate the next generation of hackers for the New York innovation community.
Peter is a regular presenter at national and international conferences on ruby, nodejs, NoSQL (especially MongoDB and neo4j), cloud computing, software craftsmanship, java, groovy, javascript, and requirements and estimating. He is on the program committee for Code Generation in Cambridge, England and the Domain Specific Modeling workshop at SPLASH (was ooPSLA) and reviews and shepherds proposals for the BCS SPA conference.
He has presented at a range of conferences including DLD conference, ooPSLA, RubyNation, SpringOne2GX, Code Generation, Practical Product Lines, the British Computer Society Software Practices Advancement conference, DevNexus, cf.Objective(), CF United, Scotch on the Rocks, WebDU, WebManiacs, UberConf, the Rich Web Experience and the No Fluff Just Stuff Enterprise Java tour.
He has been published in IEEE Software, Dr. Dobbs, IBM developerWorks, Information Week, Methods & Tools, Mashed Code, NFJS the Magazine and GroovyMag. He's currently writing a book on managing software development for Pearson.
He is an organizer of the CTO School http://www.ctoschool.org - an organization in NYC devoted to creating the next generation of technical leaders. He also organizes the node.js meetup in New York and co-organizes the Domain Driven Design and Grails meetups.
He is a regular instructor at General Assembly in New York. His presentations cover managing software development, NoSQL, mobile development, Javascript development, Twitter Bootstrap and Javascript frameworks.
He tweets regularly as @peterbell.
More About Peter »