Slide 1

Slide 1 text

WA RB ruby.wasm 進捗報告 2023/08/19 ledsun (中島滋:株式会社ラグザイア) 於 RubyKaigi 2023 follow up

Slide 2

Slide 2 text

Load Gem From Browser WA RB RubyKaigi 2023の トークタイトル

Slide 3

Slide 3 text

ブラウザでGemを読み込 むために頑張っている話。 今日はその続きです。 WA RB require_relative require の2段階で進めている

Slide 4

Slide 4 text

ブラウザで Rubyをキメると 気持ちいい WA RB もっとも重要

Slide 5

Slide 5 text

不満 WA RB

Slide 6

Slide 6 text

依存関係を 自動的に解決し てほしい。 WA RB

Slide 7

Slide 7 text

WA RB require_relative "wordle_search" ほしいもの 現状

Slide 8

Slide 8 text

ruby.wasmで requrie_relative を動かしたい WA RB

Slide 9

Slide 9 text

5月は できてなかった WA RB

Slide 10

Slide 10 text

Recursive loads do not work WA RB

Slide 11

Slide 11 text

WA RB 縦に並ベ たら動く a.rbから他 のファイルを 読み込むと固 まる

Slide 12

Slide 12 text

2022年10月 はじめた WA RB

Slide 13

Slide 13 text

RubyKaigi 2022 の翌月 WA RB

Slide 14

Slide 14 text

もうすぐ一年 WA RB

Slide 15

Slide 15 text

WA RB

Slide 16

Slide 16 text

ここで デモ WA RB したかったの ですが、昨日 からビルドが 通らなくて・・・

Slide 17

Slide 17 text

第一部完! WA RB

Slide 18

Slide 18 text

原因 WA RB

Slide 19

Slide 19 text

WA RB JavaScriptから Rubyスクリプトを実行

Slide 20

Slide 20 text

WA RB JavaScript RubyVM eval 起動 fetch

Slide 21

Slide 21 text

WA RB JavaScript RubyVM JavaScript RubyVM Rubyに 戻っていない 起動 fetch eval

Slide 22

Slide 22 text

ruby.wasmのPormiseを待つス ケジューラーはFiberで実装されて いる。FiberはRubyの世界しか知 らない。 JavaScriptとRubyのコールスタッ クがまざるとFiberが適切な位置に 戻れない。 WA RB

Slide 23

Slide 23 text

WA RB JavaScript RubyVM JavaScript RubyVM Rubyの間に JavaScriptが いると困る 起動 fetch eval

Slide 24

Slide 24 text

WA RB JavaScript RubyVM eval fetch 起動 Rubyに戻して evalすれば OK!

Slide 25

Slide 25 text

WA RB fetch eval

Slide 26

Slide 26 text

第二部 予告 WA RB

Slide 27

Slide 27 text

ruby.wasmで require を動かしたい WA RB Gemを Loadしたい

Slide 28

Slide 28 text

WA RB さいごに 大事なことをもう一度

Slide 29

Slide 29 text

ブラウザで Rubyをキメると 気持ちいい WA RB

Slide 30

Slide 30 text

WA RB 提供 終