Upgrade to Pro — share decks privately, control downloads, hide ads and more …

小粒でもパワフルなJS Runtime Antjsについて

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Comamoca Comamoca
August 17, 2026

小粒でもパワフルなJS Runtime Antjsについて

Avatar for Comamoca

Comamoca

August 17, 2026

More Decks by Comamoca

Other Decks in Technology

Transcript

  1. 自己紹介 • 25 卒 • Gleam という言語を 4 年くらい追っかけてる •

    最近はアイマスしかやってない • 最近お絵描きの練習を始めた
  2. JS をシングルバイナリにするソ リューション • JS を単一バイナリにしたい場面は往々にしてある • Claude Code とか

    • `deno compile`とか`bun build`とか • バイナリがデカくなったり起動が遅かったりする
  3. JS をシングルバイナリにするソ リューション • JS を単一バイナリにしたい場面は往々にしてある • Claude Code とか

    • `deno compile`とか`bun build`とか • バイナリがデカくなったり起動が遅かったりする • でも便利
  4. AntJS について • シングルバイナリにしやすい JS Runtime を探している時に見つ けた • 軽量な

    JS Runtime • V8, JSC, SpiderMonkey に依存していない • コールドスタートが 5ms 程度
  5. AntJS について • シングルバイナリにしやすい JS Runtime を探している時に見つ けた • 軽量な

    JS Runtime • V8, JSC, SpiderMonkey に依存していない • コールドスタートが 5ms 程度 • Bun より速い
  6. AntJS について • シングルバイナリにしやすい JS Runtime を探している時に見つ けた • 軽量な

    JS Runtime • V8, JSC, SpiderMonkey に依存していない • コールドスタートが 5ms 程度 • Bun より速い • MIR ベースの JIT も組込まれている
  7. AntJS について • 大抵この手の JS Runtime は変な制約がある • Ant は

    WinterTC Minimum Common API に準拠しているため、 WebAPI を用いたコードが動く
  8. AntJS について • 大抵この手の JS Runtime は変な制約がある • Ant は

    WinterTC Minimum Common API に準拠しているため、 WebAPI を用いたコードが動く • つまり Hono とかが動く
  9. AntJS について • 大抵この手の JS Runtime は変な制約がある • Ant は

    WinterTC Minimum Common API に準拠しているため、 WebAPI を用いたコードが動く • つまり Hono とかが動く • Node の shims も一部組込まれている
  10. AntJS について • 軽量かつ高速に実行できるため、サンドボックスとしても使え る import { Sandbox } from

    'ant:sandbox' const box = new Sandbox(({ mount: '.:/workspace' })) await box.run('untrusted.js') await box.close()
  11. まとめ • JS を単一バイナリに出来ると便利 • 起動時間が遅いなどのトレードオフがある • Ant のような軽量な JS

    Runtime を活用してバンドルすれば代償 を和らげられる • Ant を使っていきたい