InfoQ Homepage JVM Languages Content on InfoQ
-
Groovy for Java Programmers
Jeff Brown introduces Groovy to Java developers, outlining the conciseness and expressivity of the language and covering various topics: GStrings, Closures, collections, builders, beans, etc.
-
DSL Evolution for Groovy Developers
Peter Bell explains DSLs, how to approach writing one, and especially how to evolve one over time using "fixing the API", "backwards compatibility", "versioning" and "automated evolution/checking”.
-
Groovy.DSLs (from: beginner, to: expert)
Paul King and Guillaume Laforge present Groovy’s capabilities to build DSLs through several concrete examples meant to highlight the language’s good support for creating internal DSLs.
-
JRuby: Apples and Oranges
Thomas Enebo explains the basics of JRuby, showing what’s different from Java, how Java and JRuby interact with each other, and some examples demonstrating the usefulness of a complementary language.
-
Advanced GORM - Performance, Customization and Monitoring
Burt Beckwith discusses potential performance problems using mapped collections and Hibernate 2nd-level cache in GORM, along with strategies for avoiding such performance penalties.
-
Clojure-Java Interop: A Better Java than Java
Stuart Dabbs Halloway reviews Clojure’s syntax and explains how Clojure-Java interop works. He then talks about simplicity, attempting to prove that Clojure is a simpler and better language than Java.
-
Groovy Update: To Infinity and Beyond!
Guillaume Laforge reviews the main Groovy 1.6 and 1.7 features, and what’s coming in Groovy 1.8: closures, modularization, Java 7 support, DSL, AST templates, better performance.
-
Transforming to Groovy
Venkat Subramaniam explains some of the Groovy syntax elements and its idioms by taking Java code examples and transforming them step by step into their more concise Groovy counterparts.
-
Panel: The Future of Programming Languages
Guy Steele, Douglas Crockford, Josh Bloch, Alex Payne, Bruce Tate, and Ted Neward (moderator) hold a discussion on the future of programming taking questions from the audience.
-
Clojure's Solutions to the Expression Problem
Chris Houser presents the expression problem showing how to solve it using multimethods and protocols in Clojure, mentioning pros and cons of each method.
-
Functional Approaches To Parallelism and Concurrency
Don Syme on functional languages features, showing why and when they are useful for parallel programming: simplicity, composability, immutability, lightweight reaction, translations, data parallelism.
-
Functional Languages 101: What’s All the Fuss About?
Rebecca Parsons makes an basic introduction to functional languages, explaining how to think in a functional language, why is there renewed interested in them, and some nifty things about them.