Golo, a Dynamic, Light and Efficient Language for Post-Invokedynamic JVM - Inria - Institut national de recherche en sciences et technologies du numérique
Communication Dans Un Congrès Année : 2013

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

Résumé

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
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

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

Identifiants

Citer

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⟩
608 Consultations
986 Téléchargements

Altmetric

Partager

More