Hey look! It's a pragmatic language for the JVM... A simple JVM language.

Gosu was designed with **Java** developers in mind by providing a set of features that allows them to be more productive without sacrificing the benefits of Java's simplicity and type-safety. Features: - Open Type System - Advanced type inference - Program files (mix statements, functions, and classes at the same level) - Structural typing (like TypeScript's interfaces) - Extension methods (aka enhancements) - Java interoperability - Lambda expressions - Classes/Interfaces/Enums - Generics (simplified, reified, declaration site variance) - Composition (via the delegate keyword) - Properties - Null Safety (supports operator ?. etc.) - Named Arguments and Default Parameter Values - A powerful for-statement with user-defined ranges - Member Literals - Object Initializers - Classpath Statement and Shebang (for use with Gosu as a scripting language) ...and more

Quickstart Learn