Golo - a lightweight dynamic language for the JVM.
The world didn’t need another JVM language.
So we built yet another one. A simple one.
Golo is a simple dynamic, weakly-typed language for the JVM.
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
.
Eclipse Golo was originally created by Julien Ponge
and developed as part of the research activities of the
DynaMid group of the
CITI Laboratory at
INSA Lyon.
Eclipse Golo is a mature Eclipse Technology Project.
golo-lang
tagGolo follows the semantic versioning scheme.
Go to the Golo downloads page for general download instructions.
You can fetch Golo from Maven central under the org.eclipse.golo
group.
Golo is built with Gradle.
Since the source code contains the Gradle wrapper scripts,
the build can bootstrap itself by downloading the qualified Gradle version from the Internet.
Golo requires Java 8 to build.
Building beyond Java 8 is currently disabled: at this time Golo is not fully compatible with the changes introduced in Java 9
and the Java Platform Module System.
In practice you can run most Golo code with Java 11 and beyond, but you may see some reflection-related warnings.
Common tasks:
./gradlew build
./gradlew test
./gradlew clean
./gradlew asciidoctor golodoc javadoc
build/install
: ./gradlew installDist
./gradlew jacocoTestReport
The complete list of tasks is available by running ./gradlew tasks
.
Copyright (c) 2012-2021 Institut National des Sciences Appliquées de Lyon (INSA Lyon) and others
This program and the accompanying materials are made available under the
terms of the Eclipse Public License 2.0 which is available at
http://www.eclipse.org/legal/epl-2.0.
SPDX-License-Identifier: EPL-2.0
We welcome contributions from the community!
Check the CONTRIBUTING.md
file for instructions.