— a lightweight dynamic language for the JVM.

module hello.World

function main = |args| {
  println(“Hello world”)
}

 

The world didn’t need another JVM language.
So we built yet another one. A simple one.

 

Learn Golo

Golo documentation across releases.

We invite you to read the development version of the Golo Programming Language Guide.

You can also have a look at our publications,, including papers and talks.

Community

  • Get the code and contribute on GitHub.
  • Report and browse issues.
  • Discuss on our mailing-list. Get notified of new commits and issues.
  • Watch and edit our Wiki.

Foundations

Golo is a simple dynamic, weakly-typed language that favours explicit over implicit. You should become a Golo programmer within hours, not days.

Invokedynamic

Built from day 1 with invokedynamic, Golo takes advantage of the latest advances of the JVM. It is also a showcase on how to build a language runtime with invokedynamic.

Origins

While we have great plans for Golo in our research projects, we also think that it can be useful for the larger Java community.

Blog

Invokedynamic: The Hidden Engine Behind Golo

Invokedynamic: The Hidden Engine Behind Golo

A Quiet Revolution in the JVM When most developers think about the Java Virtual Machine (JVM), they imagine a platform designed primarily for statically typed languages like Java. For years, this perception was largely accurate.

A Brief History of Experimental Programming Languages

A Brief History of Experimental Programming Languages

Innovation at the Edges of Programming The history of programming languages is often told through the success stories—the languages that achieved widespread adoption and shaped entire industries. Names like C, Java, Python, and JavaScript dominate

The Power of Simplicity in Language Design

The Power of Simplicity in Language Design

Why Simplicity Is So Hard—and So Valuable In the world of programming languages, complexity often masquerades as capability. Feature-rich languages promise flexibility, power, and the ability to handle any conceivable problem. Yet, over time, many

Dynamic Languages on the JVM: Why They Matter

Dynamic Languages on the JVM: Why They Matter

Beyond Java on the Java Virtual Machine When most developers hear the term “Java Virtual Machine,” they instinctively think of Java itself. For decades, Java has been the flagship language of the JVM ecosystem, shaping

PREV NEXT

Copyright © 2026 INSA Lyon, CITI Laboratory and contributors.