Language Implementations

This page is intended to keep track of the growing number of language implementations and experiments on top of Truffle. The following language implementations exist already (in alphabetical order):

  • Enso, an open source, visual language for data science that lets you design, prototype and develop any application by connecting visual elements together.
  • Espresso, a meta-circular Java bytecode interpreter. *
  • FastR, an implementation of GNU R. *
  • GraalJS, an ECMAScript-compliant JavaScript implementation. *
  • GraalPy, an early-stage implementation of Python. *
  • GraalWasm, a compliant WebAssembly implementation. *
  • grCUDA, a polyglot CUDA integration.
  • Pkl, a configuration as code language with rich validation and tooling.
  • SimpleLanguage, a toy language implementation to demonstrate Truffle features.
  • SOMns, a Newspeak implementation for Concurrency Research.
  • Sulong, an LLVM bitcode interpreter. *
  • TRegex, a generic regular expression engine (internal, for use by other languages only). *
  • TruffleRuby, an implementation of Ruby. *
  • TruffleSOM, a SOM Smalltalk implementation.
  • TruffleSqueak, a Squeak/Smalltalk VM implementation and polyglot programming environment.
  • Yona, the reference implementation of a minimalistic, strongly and dynamically-typed, parallel and non-blocking, polyglot, strict, functional programming language.

* Shipped as part of GraalVM.

Experiments

Submit a pull request to add/remove from this list.

Connect with us