I am going to create an internal DSL for JVM. And I see that Scala and Groovy are the best candidates for this task. I found that Groovy script is less verbose, uses BigDecimal by default, while Scala has good type inference system. What are other differences between these languages in context of internal DSL?
EDIT: Finally I picked Groovy and after one year of development of the DSL it seems to be the right choice: I can benefit from type inference and static types in Groovy 2.0 and still use dynamic types when needed, methods/properties dispatch handlers work great, ASTTransforation allowed me to change the language semantics, groovy plugin for eclipse and IDEA have out of the box support for Groovy DSLs, and the DSL syntax is more concise than it would be in Scala. Though there are still some room for improvement as some dynamic features not always worked as I expected.