Webブラウザ上でJavaScript以外のプログラミング言語を実行したいと言うニーズはとても強くあります。一つはJavaScriptで実行エンジンを開発する方法、またはコンパイルしてJavaScriptを生成する方法などがあります。 最近有力なのがWebAssemblyで実行エンジンを実装する方法です。今回紹介するArtichokeはRubyをWebAssemblyで実装するソフトウェアです。

Artichokeの使い方

プレイグラウンドです。requireやクラスが使えるのが分かります。

Artichokeは現状、mruby 2.0.1相当の実装になっているようです。将来的にMRI(Ruby API)の実装を目標としています。ArtichokeはCRubyをWebAssembly化するのではなく、Rustで実装し直すというアプローチを取っています。JRubyやIronRubyに近いアプローチではないでしょうか。今後に期待したいソフトウェアです。

ArtichokeはRust製のオープンソース・ソフトウェア(MIT License)です。

Artichoke Ruby Playground artichoke/artichoke: ? Artichoke is a Ruby made with Rust