Gosu Programming Language Released To Public


News: Gosu Programming Language Released To Public

  1. Gosu Programming Language Released To Public (2 messages)

    Guidewire Software released the Gosu programming language for public availability. Gosu is a general-purpose programming language built on top of the Java Virtual Machine (JVM). It is object-oriented, static typed, imperative, and 100% Java compatible (use/extend Java types, implement Java interfaces, compile to Java bytecode). It has type inference (very readable code yet static typing!), in-line functions that you can pass as objects (closures / lambda expressions / blocks), enhancements (inject methods + properties, even on Java types!), and simplified generics. Gosu is provided via the Apache License v2.0. The language itself is not yet open source, although that is planned for a future community release. You can read a complete introduction to the Gosu languagea comparison to other languages, and syntax differences from Java.

    Threaded Messages (2)

  2. Dynamic method names.[ Go to top ]

    Can I define method names in this way:

    public class User{


    String user, address;

    public @Field.type get.@Field.(){

        return @Field;


    public void set.@Field.(@Field.type data){

        @Field = data;




    It seems to be a very common requirement for Groovy users, to be able to generify method declarations.

    Having this feature in a safe code environment would be uber good.

  3. Dynamic method names.[ Go to top ]

    Gosu supports properties as first-class class members.  For example, you can declare a private field and expose a public property for it like this:

    class User {

      var _user: String as User

      var _address: String as Address


    That's it, all done!

    Note you can override the getter and setter. E.g.,

    property get User() : String {

      print( "accessed User property" )

       return _user