JVM-compatible languages such as Scala, Groovy and JRuby are recently gaining more popularity for developing Domain Specific Languages (DSLs). But are they better suited to creating internal DSLs than the Java programming language? Venkat Subramaniam explains why "Essence over ceremony" and "Metaprogramming" features in a dynamic language like Groovy help in developing internal DSLs.
Behavior-Driven Development is nothing new but has steadily risen to the forefront as an excellent technique for technical and non-technical participants to collaborate on a software project. Several frameworks exist to aid the development of software in the BDD (Behavior-Driven Development) mindset, with one particular framework trying to make it as easy as possible for everyone.
A typical Grails application throws events at key points in the application life cycle, whether in the build process or in individual artifacts such as domain classes and controllers. These application events are good extension points to setup listeners to intercept them and react to the events with custom behavior.
John Rose, a Hotspot VM developer at Sun, has announced the first successful execution of the 'invokedynamic' instruction on the OpenJDK VM. Dynamic invocation is an important feature for adapting dynamic languages to the JVM.
In this interview made by Sadek Drobi during QCon San Francisco 2007, Neal Ford talks about the tendency of having multiple languages running on one of the two major platforms existing today: Java and .NET. He also presents the advantages offered by Ruby compared to static languages like Java or C#.
Morph AppSpace is a cloud-based platform for hosting web applications. The latest release has added support for Groovy and Grails. InfoQ caught up with David Abramowski, CEO of Morph Labs to get some more details around it's recent move into the Java space.
In this presentation from QCon San Francisco 2007, Jason Rudolph gives an overview and demonstration of Grails. Topics covered include Java/Grails integration, Grails plugins, creating a complete Grails sample application from scratch, the structure of a Grails application, data querying and persistence, validation, controllers and tag libraries.
InfoQ sat down with Keith Donald and Jeremy Grelle of the Spring Web team to discuss the release of Web Flow 2.0.0.RC1, the first production release candidate for the next major release of Web Flow. Web Flow is an extension to Spring MVC for implementing flows in a web application.
Travis Jensen compares Groovy, Jython and JRuby for developing web based user interfaces.
In this article, Fadi Shami gives a walkthrough of integrating the grails-acegi plugin with a sample Grails application. As part of this integration, there are three major components which are used – Groovy, Grails and Acegi Security.
Today marked the first day of the Groovy/Grails Experience, also known as 2GX, in Reston, Virginia. The conference spans three days and includes forty 90-minute sessions, panel discussions and code workshops. One of the first sessions of the day was Venkat Subramaniam's "DSL In Groovy." Venkat provided a thorough discussion on DSLs and how Groovy eases the creation and usage of them.
"Am I just a Java fanboy?" - this is a good question. And it is one that Bill Burke does answer in his blog post Dynamic Languages: Rationalizations and Myths. But along with the post comes an overwhelming response, and insight into where we are heading as a community.
Grails 1.0 has been released. InfoQ spoke with Graeme Rocher, Grails project lead and co-founder, and CTO of G2One about the release of Grails 1.0 to deliver in-depth coverage about the feature-set, maturity, ease of use and future plans for Grails.
Recently, there has been a lot of debate around the usefulness Maven, which is a Java-based build and dependency management tool being used in many projects. InfoQ took a closer look at this debate to understand what issues are being encountered, and what has resulted from the debate.
Using the EC2 API is straightforward, but to make life even simpler Chris Richardson has posted a Groovy framework that can launch MySQL, Apache HTTP Server, a set of Tomcat instances and JMeter, as well as deploying web applications to Amazon's EC2.