Tier 1 languages
Tier 1 languages can be either:
- compiled to WASM modules their with standard library built on WASI Preview 1 and there is a WIT binding generator available for them
- or compiled directly to WASM components supporting WASI Preview 2
By supporting WIT bindings Tier 1 languages can take full advantage of Golem's features:
- They can define their own typed interface that can be invoked via Golem
- They can use additional host interfaces such as WASI-HTTP and the Golem Promise API
This makes Tier 1 languages applicable in both actor-like and workflow-like use cases.
The currently supported Tier 1 languages are:
💡
JVM languages like Java, Scala, Kotlin and Clojure could in theory be Tier 1 guest languages by using the experimental https://github.com/fermyon/teavm-wasi (opens in a new tab) but it is not working currently. However, Scala 2 is supported by first compiling to Javascript using Scala.JS and then using the Javascript tooling.
C# binding generator is under development, but was not tested with Golem yet.