To view parent comment, click here.
To read all comments associated with this story, please click here.
You're right, I agree that there is still value in the Java platform.
However with the real thing, I mean the thing itself. You can actually use C# with JVM. For example:
* Grasshopper lets you use C# to directly write JVM code. It was expensive, but I think it became free: http://dev.mainsoft.com/Default.aspx?tabid=29
* Stab (another open source project) is already an implementation of a C# like language on the JVM: http://code.google.com/p/stab-language/
* As a side note, IKVM lets you do the reverse: Java JAR -> .Net DLL conversion, thus you can employ Java libraries in .Net project
And there could be others. That's why I'm questioning the novelty of this new language.
Hi Guys,
I'm one of the gosu developers, the guy who gave the presentation to the SacJUG.
So, yeah, Gosu isn't revolutionary in many ways: it takes good ideas from C#, Ruby, etc. and then tries to be a very smooth lateral transition for java developers. It is statically typed mainly to support tooling (code competion, etc.) It has a few interesting features, such as a delegate keyword that allows you to implement interfaces with a field, which allows for easy compositional programming ("Favor composition over inheritance" the experts always tell me.)
It also has automatic downcasting after a type test:
var foo : Object = "foo"
if( foo typeis String ) {
print( foo.capitalize() ) // <-- automatically downcast to String
}
These are small things, but nice.
The core innovation of the language is the Open Type System, which allows frameworks to generate Domain Specific Type Systems. It's effectively a formalized and simple to understand metaprogramming system that gives library and framework developers a heck of a tool. Scott McKinney, the father of the language, will be putting a post up on this concept soon here:
http://guidewiredevelopment.wordpress.com/
If you are a JVM programmer or someone who likes to dabble in lots of languages, Gosu is worth watching.
Also, for the concerns that this language might be too oriented towards a particular client: don't worry. Gosu is a general programming language that used in all sorts of ways by Guidewire. The commercial support increases the chance that it won't go away. (Guidewire actually makes money, this isn't a vanity project.)
I'm happy to answer any questions or comments.




Member since:
2005-07-12
Why bother? Simple. So you can use those goodies on other platforms besides Windows, or .Net. I'm not knocking those, but lots of people prefer choice of platforms as well as vendor.
And give credit where credit is due. Ander Hejlsberg and his team at MS have done a fantastic job of designing and evolving C#.
And unfortunately, Java (the language) has fallen behind.
However, the JVM itself is a fantastic, wonderful feat of software engineering, and a great platform to run on, and loaded with huge, fantastic, libraries.
Java (the Language) being behind the times, + the JVM (the runtime/platform) being a wonderful platform and great engineering = need for other JVM languages. Enter Scala, Groovy, JRuby, Jython, Clojure, and now Gosu. And some of these are already well into large production environments - Groovy and Grails, Scala + Lift, JRuby, etc.
This is where the excitement of Java lies - JVM + newer JVM languages.
Edited 2010-11-12 16:41 UTC