Golo, a Dynamic, Light and Efficient Language for Post-Invokedynamic JVM - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2013

Golo, a Dynamic, Light and Efficient Language for Post-Invokedynamic JVM

Abstract

This paper introduces Golo, a simple dynamic programming language for the Java Virtual Machine (JVM) that has been designed to leverage the capabilities of the new Java 7 invokedynamic instruction and API (JSR 292). Golo has its own language constructs being designed with invokedynamic in mind, whereas existing dynamic languages for the JVM such as Groovy, JRuby or Nashorn have to adapt language constructions which are sometimes hard to optimize. Coupled with a minimal runtime that directly uses the Java SE API, Golo is an interesting language for rapid prototyping, polyglot application embedding, research (e.g., runtime extensions, language prototyping) and teaching (e.g., programming, dynamic language runtime implementation). We show that the language design around invokedynamic allows for a very concise runtime code base with performance figures that compare favorably against Java and other dynamic JVM languages. We also discuss its future directions, either as part of Golo or through language and runtime research extensions.
Fichier principal
Vignette du fichier
golo-pppj13.pdf (254.75 Ko) Télécharger le fichier
Origin : Files produced by the author(s)
Loading...

Dates and versions

hal-00848514 , version 1 (30-07-2013)
hal-00848514 , version 2 (27-08-2013)

Identifiers

Cite

Julien Ponge, Frédéric Le Mouël, Nicolas Stouls. Golo, a Dynamic, Light and Efficient Language for Post-Invokedynamic JVM. PPPJ - International Conference on Principles and Practices of Programming on the Java platform: virtual machines, lamguages and tools - 2013, Sep 2013, Stuttgart, Germany. ⟨10.1145/2500828.2500844⟩. ⟨hal-00848514v2⟩
568 View
957 Download

Altmetric

Share

Gmail Facebook X LinkedIn More