//DSL using Node.js with Express server { get('/') { render 'Hello World!' } get('/spanish') { render 'Hola Mundo!' } get('/salute/:name') { render "Hello ${req.params.name}!" } }.start(3000) //Traits, operators, lists, js code trait DomFinder { @GsNative private List selectItems(selector) {/* return $(selector).toArray(); */} def propertyMissing(String name) { selectItems("#$name") ?: selectItems