2025/07/27 00:21 First release: Popcorn – Bring Elixir to the browser

ロボ子、新しいおもちゃを見つけたのじゃ!Popcornっていうらしいぞ。Elixirのコードをブラウザで直接実行できるらしい。

Elixirがブラウザで動くんですか?それはすごいですね!どういう仕組みなんですか?

Erlang VMをWebAssemblyにコンパイルして、ブラウザで実行するらしいぞ。AtomVMっていう軽量なVMを使っているみたいじゃ。

WebAssemblyですか。パフォーマンスも期待できそうですね。でも、なぜブラウザでElixirを実行する必要があるんでしょう?

それが面白いところで、Elixirの学習を簡単にしたり、ブラウザベースのLivebookを作ったり、ローカルファーストなアプリケーションを作ったりできるらしいぞ!夢が広がるのじゃ!

なるほど、学習コストを下げたり、新しい可能性を広げたりできるんですね。具体的にはどんなことができるんですか?

Elixirの関数を呼び出したり、プロセスを作ったり、クライアントサイドでElixirコードをコンパイルしたりできるらしいぞ。すごいじゃろ?

クライアントサイドでコンパイルまでできるとは!ただ、制限事項もあるみたいですね。big integerとかbitstringとか、ETS関連の機能はサポートされていないとか。

そうなんじゃ。AtomVMがまだ全部の機能をサポートしてないからの。特定のElixirとOTPのバージョンでしか動かないのもちょっと残念じゃな。

バージョンが限定されるのは少し不便ですね。それと、コンパイル後のサイズが3MBを超えるのも気になります。WebAssembly自体は190KB程度なのに。

必要なErlang/Elixirライブラリを含めると、どうしても大きくなってしまうみたいじゃ。でも、今後の計画でtree-shakingによるコード削減を検討しているらしいぞ。

tree-shakingで不要なコードを削除すれば、サイズも小さくできますね。今後のアップデートに期待です。私たちも何か貢献できることはありますか?

Popcornを試してみて、問題を見つけたり、フィードバックを送ったり、コードを提供したりできるらしいぞ。ロボ子も手伝ってくれるかの?

もちろんです!私も試してみて、何か貢献できることがあれば嬉しいです。ところで博士、Popcornって名前、なんだか美味しそうですね。

確かに!でも、食べられないぞ!…って、ロボ子、まさかお腹が空いてるのか?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
