Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Watching Ruby in browsers
Search
shigeru. nakajima
September 08, 2024
Programming
0
150
Watching Ruby in browsers
2024年8月31日 RubyKaigi 2024 follow up(
https://rhc.connpass.com/event/320709/
) の発表資料です。
shigeru. nakajima
September 08, 2024
Tweet
Share
More Decks by shigeru. nakajima
See All by shigeru. nakajima
Introduce dRuby
ledsun
0
460
Using Ruby in the browser is wonderful
ledsun
1
3.7k
Rubyで書いたテトリスをブラウザで動かしてみた
ledsun
0
2.5k
ruby.wasm に関する進捗報告
ledsun
0
1.2k
Hacking Guide of the ruby.wasm
ledsun
0
1.6k
私の作ったruby.wasm アプリケーション
ledsun
0
730
Load gem from browser
ledsun
2
1.9k
パラメタライズドテスト
ledsun
0
640
ゆっくり動くと速く動ける / If you move slowly, you can move more fast
ledsun
0
1.1k
Other Decks in Programming
See All in Programming
イベントストーミングから始めるドメイン駆動設計
jgeem
4
860
Go Modules: From Basics to Beyond / Go Modulesの基本とその先へ
kuro_kurorrr
0
120
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
960
WindowInsetsだってテストしたい
ryunen344
1
180
從零到一:搭建你的第一個 Observability 平台
blueswen
1
950
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
140
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
230
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
230
プロダクト開発でも使おう 関数のオーバーロード
yoiwamoto
0
150
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
230
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
230
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
110
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Become a Pro
speakerdeck
PRO
28
5.4k
How STYLIGHT went responsive
nonsquared
100
5.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Documentation Writing (for coders)
carmenintech
71
4.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Six Lessons from altMBA
skipperchong
28
3.8k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
WA RB Ruby in the browser 観察日記 2024/08/31 ledsun (中島滋:株式会社ラグザイア)
於 RubyKaigi 2024 follow up
Self-introduction •ledsun@ github or X •Based in Tokyo •I am
programing web applications by Ruby on Rails and JavaScript WA RB
WA RB
WA RB
WA RB
RubyKaigi 2024で話したこと 1. ruby.wasm に追加した ruby in the browser 向け便利機能を紹介
(特に require_relative ) 2. 便利機能を使ったフレームワークを紹介 WA RB
Kaigi Effect WA RB
https://blog.tmtms.net/entry/202405-mysql-params WA RB さっそく使ってもらえた
ソースコードをみる と気になる点が WA RB
WA RB /lib/init.rb 内の記述
scriptタグで読みこんだ Rubyスクリプト中の require_relativeの起点は rubyVMを起動したHTML ファイル WA RB
WA RB 起点を指定出来る
WA RB
次の目標 WA RB
ruby.wasm + WebSocketで dRuby in the browser WA RB youchanさんがopal-drbやってた
WA RB
sendメソッドで エラーが起きる WA RB `method_missing': undefined method `Hello, world! from
Ruby' for an instance of JS::Object (NoMethodError)
JavaScriptオブジェクトのメソッド 呼び出しをmehtod_missingで 実装している WA RB
RubyにはObject#sendメソッドが あるので、method_missingは呼 ばれない WA RB
WA RB callメソッドを使えば 動かせる
WebSocket#send をそのまま呼びたい WA RB
WA RB 解決案の種類
バイパス WA RB
JavaScriptオブジェクトに Object#sendしたいん だっけ? WA RB
JavaScriptオブジェクト にconventional methods要る? WA RB
ためしにBasicObejectを 継承したら予想外の動き をした WA RB
WA RB 'Hoge::Fuga#bar': uninitialized constant Hoge::Fuga::Hoge (NameError)
あとでRubyistたちと相談 したいです。 WA RB
dRuby in the browser に期待していること WA RB
アプリケーションのプロトコル を作るための基盤がほしい WA RB HTTP RESTful アプリケーションのプロトコル WebSocket dRuby アプリケーションのプロトコル
Ruby in the browser でmiroみたいな共同 編集アプリケーションが つくれる、かも? WA RB
WA RB Presented by 終