Cloudflareは、JavaScript/WebAssemblyをCDNエッジで実行するサーバレス基盤「Cloudflare Workers」が、Python、Scala、Kotlin、Dart、Reasonの各言語に対応したことを発表しました。
Cloudflare Workersは、Googleが中心となって開発しているオープンソースのJavaScriptエンジン「V8」を用いてJavaScriptとWebAssembly/WASIの実行を実現しています。そのため、すでにをターゲットとしてWebAssemblyバイナリを生成できるプログラミング言語であれば、事実上Cloudflare Workersで利用することが可能だったといえます。
今回発表されたPython、Scala、Kotlin、Dart、Reasonの対応は、そうしたWebAssemblyバイナリへコンパイルする方法ではなく、ソースコードをトランスパイルしてJavaScriptを生成する方法によってV8エンジンで実行可能にしています。
具体的には、Cloudflare WorkersのコマンドラインツールであるWranglerを利用し、PythonではJavaScriptへのトランスパイラであるTranscryptを、Scalaでは「Scala.js」を、KotlinやDartではそれぞれの言語に標準で備わっているJavaScriptへのトランスパイラである「Kotlin for JavaScript」「dart compile js」を使ってJavaScriptへの変換を行います。
ただしライブラリなどによってはトランスパイラによってサポートされない場合があるため、注意が必要です。