際際滷

際際滷Share a Scribd company logo
emruby:
ブラウザで咾Ruby
y恙Rails #32
Yusuke Endoh
1
徭失B初在h儲戳初 (@mametter)
? クックパッドでPくフルタイムRubyコミッタ
? Ruby 3耶原の床議盾裂ツ`ルTypeProf恬ってます
? https://github.com/ruby/typeprof
? でも書晩はぜんぜん`うをします
2
emruby: ブラウザの貧で咾Ruby
https://mame.github.io/emruby/
3
emrubyの粧い
? ブラウザでRubyが咾のはSしい
? BればTryRuby┐しh廠くらいにはなるか
? 繍栖議にJavaScriptの旗紋になるかはWASM肝及
? Rust / Go / KotlinなどもWASM竃薦に鬉靴討襪里
? おことわり
? このk燕にはRailsもRuby冱Zもほとんど竃てきません
? Rubyのビルドの岑Rが富し附につきます
4
Rubyをブラウザで咾すvB冩梢
? Opal: JavaScriptでかれたRubyインタプリタ
? https://github.com/opal/opal
? Artichoke: RustでかれたRubyインタプリタWASM竃薦鬈
? https://github.com/artichoke/artichoke
? repl.it: Ruby 1.8をEmscriptenしたもの┐蕕靴ぃ
? https://github.com/replit-archive/emscripted-ruby
? Ruby on WebAssembly: mrubyをEmscriptenしたもの
? https://github.com/blacktm/ruby-wasm
? RubyのNaClサポ`ト2012゛2017
? よくまとまってる並
? https://blog.unasuke.com/2021/products-about-webassembly-and-ruby/
5
アジェンダ
? ?WASM / Emscriptenとは?
? emrubyが咾まで
? まとめ
6
WebAssembly (WASM)
? ブラウザの貧で咾g佩ファイル侘塀
? 2017定からメジャ`ブラウザが鬉靴討い
? JavaScriptより堀くて (?) 弌さいらしい
7
Emscripten
? C/C++のプログラムをWASMにQするコンパイラ
? LLVMベ`ス
? デモ匯E┨鼎修Γhttps://github.com/emscripten-
core/emscripten/wiki/Porting-Examples-and-Demos
? http://kripken.github.io/boon/boon.html
? https://files.unity3d.com/jonas/AngryBots/
? http://coolwanglu.github.io/vim.js/emterpreter/vim.html
8
Emscriptenの児云議な聞いかた
9
#include <stdio.h>
int main() {
printf("hello, world!?n");
return 0;
}
emcc hello.c Co hello.js && node hello.js
emcc hello.c Co hello.html
アジェンダ
? WASM / Emscriptenとは
? ?emrubyが咾まで?
? まとめ
10
念戻岑RRubyのふつうのビルド
? Rubyソ`スのディレクトリで肝のコマンドを嬉つ
? ./configure: h廠ごとにビルド圭隈を{屁する
? どのシステムv方が聞えるか、コンパイラオプションが聞えるか
? OS、コンパイラ、バ`ジョンなどの`いを{べる
?make: ソ`スコ`ドをコンパイルする
? まずminirubyという崙洌rubyg佩ファイルを恬る
? minirubyを聞ってスクリプトRubyでかれているを咾し、
ライブラリや恷K議なrubyg佩ファイルを恬る
11
./configure && make
の送れ
? minirubyをWASMにする
? 云輝のrubyをWASMにする
? 恷K朕烹irbを咾す
12
./configure && makeのEmscripten晒
? Emscriptenはconfigure+makeに鬉靴討い
? emconfigure / emmakeはビルドをうまくだまして
Emscriptenコンパイラを聞わせる
? これだけ´´ではない
? g喘プログラムがゼロ筝でビルドできることはoいと房う
13
emconfigure ./configure && emmake make
Emscriptenが隆g廾のCv方にIする
? }Emscriptenで旋喘できないCv方がいっぱいある
? popenがない
? pthread_createはあるがpthread_killはない
? pthread_createはあるがpthread_attr_getguardsizeがない
? pthread_sigmaskはあるけどgHには咾ない (!) 、など
? configureの辰泣をつくような隆g廾がいろいろあった
? IRubyのconfigureを個鋲して鬉靴
? コミッタなので、Ruby箸鰆噂筝しまくった
14
Rubyはv方の哈方の方にル`ズだった
? C冱Zでは、v方に哈方を噫蛍に局しても措い (!?)
? C冱Z碧`郡だが、
謹くのCコンパイラで咾
? Rubyはこれに卆贋していた
? Emscriptenのオプションで
鬉靴
? -s EMULATE_FUNCTION_POINTER_CASTS=1
15
int foo(int a) {
printf("%d?n", a);
}
int main() {
int(*foo2)(int,int) =
(int(*)(int,int))foo;
foo2(42, 43); // 42
}
1哈方のv方fooを2哈方で柵び竃す箭
miniruby.wasmできた
? 2018定はこの粁Aで巷_した
? 火廷なお岑らせ
? EMULATE´オプションがEmscirptenから茅された
? コンパイルできなくなった
? どうしたか
? 慧崔した ★ 3定Uったら、Ruby箸岷っていた
? 裏俐屎で2021定1埖に壅ビルドに撹孔した
16
の送れ
? minirubyをWASMにする
? ここまでできた
? 云輝のrubyをWASMにする
? 恷K朕烹irbを咾す
17
ruby.wasmを恬るには
? ふつうのrubyのビルドには、minirubyが駅勣
? しかしminiruby.wasmはLinuxでg佩できない
? クロスコンパイルする
? ビルドh廠とはちがうh廠のg佩ファイルを恬ること
? Linuxでruby.exeWindowsのg佩ファイルを恬る、とか
? 書指はLinuxでruby.wasmを恬る
? emconfigureはかえってややこしくなるのでやめた
18
Rubyのクロスコンパイル
? Rubyのconfigureはクロスコンパイルに鬉靴討い
? minirubyの旗わりにビルドh廠のrubyを聞ってくれる
? これで匯ruby.wasmはできた
? が、畠隼咾ないのでデバッグΕ疋ュメントΕ秋`スiみ
19
$ ./configure ?
--build x86_64-pc-linux-gnu ?
--host wasm32-unknown-emscripten ?
CC=emcc LD=emcc AR=emar RANLIB=emranlib
$ make
ビルドh廠
鶚h廠
Emscripten
}Rubyの隠便議GC
? 隠便議GCとは
? マシンスタックの、オブジェクトの歌孚であると協して
マ`ク鵑箸垢襯ベ`ジコレクタの圭塀
? https://ja.wikipedia.org/wiki/%E3%83%9E%E3%83%BC%E3%82%AF%E3%83%BB%E3%82%A2%E3%83%B3%E3%83%89%E3%83%BB%E3%82%B9%E3%82%A4%E3%83%BC%E3%
83%97#%E4%BF%9D%E5%AE%88%E7%9A%84%E3%81%AA%E3%82%AC%E3%83%99%E3%83%BC%E3%82%B8%E3%82%B3%E3%83%AC%E3%82%AF%E3%82%BF
? つまり吭躓弔C冱Z碧`郡なメモリアクセスをする
? Emscriptenのメモリモデルでは畠隼咾ない
? IEmscriptenが隠便議GC喘のAPIを喘吭していた
? emscripten_scan_stack / emscripten_scan_registers
? スタックの枠^とK極がわかる、これらを聞うようにした
20
噫Fiberに鬉垢襭隆頼
? Rubyは2018定挑にFiberの匯何をアセンブリでg廾した
? Emscriptenでx86アセンブリはコンパイルできないので
コンパイルエラ`になっていた
? IEmscriptenのAPIを聞ってg廾した
? emscripten_fiber_init / emscripten_fiber_swap
? コンパイルオプション -s ASYNCIFY と栽わせて聞う
? miniruby.wasmでは咾い燭、ruby.wasmでは咾ない
? 圻咀隆盾苧、書瘁のn}
? とりあえずFiber聞わなければ}ない
21
}啜張螢鵐ができない
? つまり、ライブラリの require ができない
? require "ripper"したらripper.soを啜張螢鵐する
? しかしEmscriptenは啜張螢鵐に隆鬈┐燭屬鵤
? 盾Qripperを床議リンクした
? 麿にも駅勣なライブラリを弼?怎した
22
$ ./configure ?
--with-static-linked-ext --with-ext=ripper ´
$ make
その麿Emscripten蒙嗤っぽい
? リンクが払,垢襭htonsがつからない、とか
? -lcでlibcを苧幣議にリンクすれば咾い
? -fstack-protectorも鬉靴討覆い茲Δ覆里馬した
? すぐメモリ音怎エラ`になる
? Emscriptenはデフォルトでメモリサイズを耕協_隠する
? サイズ辛笋砲垢襯プションをつけた
(-s ALLOW_MEMORY_GROWTH=1)
? stack overflowの奮が咾ないので峭めた、など
23
ruby.wasmできた
? require "ripper.so"も咾
? ある殻業}jなRubyスクリプトも咾
24
の送れ
? minirubyをWASMにする
? 云輝のrubyをWASMにする
? ここまでできた
? 恷K朕烹irbを咾す
25
irbを咾すのに駅勣なもの
? Rubyインタプリタ┐任た
? ripper.soなどのライブラリ┐任た
? irbのソ`スコ`ド┐△襪韻匹泙製Mみzんでない
? 極挑エミュレ`タoい
26
∀襯侫.ぅ襯轡好謄
? Emscriptenのfile_packagerツ`ルで恬れる
? irbやrubygemsなど駅勣なRubyソ`スコ`ドをまとめた
? fs.jsとfs.dataができた
? がんばってロ`ドできるようにした
? コンパイルオプションに-s FORCE_FILESYSTEM=1弖紗
? fs.jsを<script>で柵ぶだけ´´なのだが吭翌と逗困靴
27
xterm.jsをMみzむ
? xterm.js: ブラウザで咾極挑エミュレ`タ
? https://xtermjs.org/
? VS Codeでも聞われている
? 火廷なお岑らせ
? Emscriptenは僻覲薦のg廾がいまいち
? とりあえずの
? ラインシはxterm.js箸任笋蝓irbには佩g了で僕る
? relineirbの仟しいシC嬬の試喘は書瘁のn}
28
ということで
https://mame.github.io/emruby/irb/
29
CPU 100%を契ぐ
? Emscriptenの伏撹麗はほぼ揖豚で咾asyncでない
? 秘薦棋ちをポ`リングでやるみたい┘鴬`ム覿┌殖
? IeスレッドWeb Workerで咾すようにした
? 宥佚圭隈はvim.wasmにったSharedArrayBuffer聞喘
https://rhysd.hatenablog.com/entry/2019/06/13/090519
? 火廷なお岑らせ5埖に咾なくなるzみ
30
ということで
? ┐なり要fしたけどirbがブラウザで咾い殖
? rubygems、did_you_meanなども匯咾い討い襪辰櫃
31
鯛ち[憤い
? ruby.wasmのサイズ29 MB
? コンパイルオプションで{屁して8 MB
? -Os: 福サイズ嶷で恷m晒する
? -g0: デバッグ秤鵑鯤,
32
Emscripten侭湖
? 瑤亮斜gではない
? FgのC冱Zコ`ドをゼロ筝でビルドできることはoい
? いっぱい}に壟囑する
? が、とてもよくできている
? 匯伏卉{べればたいていI圭隈やAPIがある
? 碧にmらずドキュメントを宥してiむのが壼祇
? 咾い燭蕕箸討砌劼靴
33
まとめ
? ブラウザで咾Ruby、emrubyをB初しました
? 寄悶Ruby箸鬉靴燭里任燭辰燭海譴世韻妊咼襯匹任る
34
$ ./configure ?
--build x86_64-pc-linux-gnu ?
--host wasm32-unknown-emscripten ?
--with-static-linked-ext ?
--with-ext=ripper,date,strscan,io/console,´,psych ?
optflags=-Os debugflags=-g0 ?
CC=emcc LD=emcc AR=emar RANLIB=emranlib
$ make
書瘁の嚠協
? ほそぼそとメンテナンスするつもり
? WASMが寄ヒットする晩に笋┐
? そのとき仝RubyもWASM鬉靴討泙后垢煩圓い燭
? RubyからJSやDOMを荷恬できたらいいなあ
? 輝中はOpalを聞うのがいいと房います
? WASM井TryRubyができたらいいなあ
? Opalであまり}はないですが
35

More Related Content

What's hot (20)

FHIR Server 芦bc聞喘
FHIR Server 芦bc聞喘FHIR Server 芦bc聞喘
FHIR Server 芦bc聞喘
Lorex L. Yang
?
カンバンゲ`ム ル`ルh苧
カンバンゲ`ム ル`ルh苧カンバンゲ`ム ル`ルh苧
カンバンゲ`ム ル`ルh苧
Yasui Tsutomu
?
A deep dive into libuv
A deep dive into libuvA deep dive into libuv
A deep dive into libuv
Sa┣l Ibarra Corretg└
?
SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-
SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-
SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-
v蓮 峠措
?
干皆でファミコンエミュレ`タを恬った扮の三
干皆でファミコンエミュレ`タを恬った扮の三干皆でファミコンエミュレ`タを恬った扮の三
干皆でファミコンエミュレ`タを恬った扮の三
sairoutine
?
jcmd をさわってみよう
jcmd をさわってみようjcmd をさわってみよう
jcmd をさわってみよう
Tsunenaga Hanyuda
?
永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k
永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k
永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k
infinite_loop
?
FlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_k
FlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_kFlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_k
FlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_k
TylerShukert
?
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみたWindows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
y-uti
?
コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭
コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭
コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭
Masahito Zembutsu
?
.NET Core 3.0 + Windows 10 で WPF _k
.NET Core 3.0 + Windows 10 で WPF _k.NET Core 3.0 + Windows 10 で WPF _k
.NET Core 3.0 + Windows 10 で WPF _k
匯錬 寄弥
?
Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創
Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創
Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創
NTT DATA Technology & Innovation
?
error_highlight: User-friendly Error Diagnostics
error_highlight: User-friendly Error Diagnosticserror_highlight: User-friendly Error Diagnostics
error_highlight: User-friendly Error Diagnostics
mametter
?
永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと
永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと
永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと
Kentaro Matsui
?
UE4を聞った啌騏惇 (UE4 Character Art Dive Online)
UE4を聞った啌騏惇 (UE4 Character Art Dive Online)UE4を聞った啌騏惇 (UE4 Character Art Dive Online)
UE4を聞った啌騏惇 (UE4 Character Art Dive Online)
エピック?ゲ`ムズ?ジャパン Epic Games Japan
?
HTTP2 恷堀g廾 ?秘T?
HTTP2 恷堀g廾 ?秘T?HTTP2 恷堀g廾 ?秘T?
HTTP2 恷堀g廾 ?秘T?
Kaoru Maeda
?
Unified JVM Logging
Unified JVM LoggingUnified JVM Logging
Unified JVM Logging
Yuji Kubota
?
DDD + Clean Architecture: 楱菁鶺恬
DDD + Clean Architecture: 楱菁鶺恬DDD + Clean Architecture: 楱菁鶺恬
DDD + Clean Architecture: 楱菁鶺恬
teddysoft
?
階~室派プログラミングの弊順┨鶲婉2015
階~室派プログラミングの弊順┨鶲婉2015階~室派プログラミングの弊順┨鶲婉2015
階~室派プログラミングの弊順┨鶲婉2015
mametter
?
マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺
マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺
マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺
disc99_
?
FHIR Server 芦bc聞喘
FHIR Server 芦bc聞喘FHIR Server 芦bc聞喘
FHIR Server 芦bc聞喘
Lorex L. Yang
?
カンバンゲ`ム ル`ルh苧
カンバンゲ`ム ル`ルh苧カンバンゲ`ム ル`ルh苧
カンバンゲ`ム ル`ルh苧
Yasui Tsutomu
?
SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-
SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-
SceneCapture2Dを聞って謁の鬚海Δ鰔る -櫃砲覆襪△猟錣硫仁櫃留-
v蓮 峠措
?
干皆でファミコンエミュレ`タを恬った扮の三
干皆でファミコンエミュレ`タを恬った扮の三干皆でファミコンエミュレ`タを恬った扮の三
干皆でファミコンエミュレ`タを恬った扮の三
sairoutine
?
永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k
永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k
永堰永+珂霞皆河晦を聞ったスケ`ラブルなソ`シャルゲ`ム蝕k
infinite_loop
?
FlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_k
FlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_kFlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_k
FlutterとSupabaseでRDBを聞った サ`バ`レスアプリ_k
TylerShukert
?
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみたWindows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
y-uti
?
コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭
コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭
コンテナの恬り圭仝禽看界一艶姻は戦圭で採をしているのか拭
Masahito Zembutsu
?
.NET Core 3.0 + Windows 10 で WPF _k
.NET Core 3.0 + Windows 10 で WPF _k.NET Core 3.0 + Windows 10 で WPF _k
.NET Core 3.0 + Windows 10 で WPF _k
匯錬 寄弥
?
Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創
Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創
Javaコ`ドが堀くg?される蜘畜 - JITコンパイラ??JJUG CCC 2020 Fallv處Y創
NTT DATA Technology & Innovation
?
error_highlight: User-friendly Error Diagnostics
error_highlight: User-friendly Error Diagnosticserror_highlight: User-friendly Error Diagnostics
error_highlight: User-friendly Error Diagnostics
mametter
?
永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと
永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと
永堰永で寄号庁ブラウザゲ`ムを蝕kしてわかったこと
Kentaro Matsui
?
HTTP2 恷堀g廾 ?秘T?
HTTP2 恷堀g廾 ?秘T?HTTP2 恷堀g廾 ?秘T?
HTTP2 恷堀g廾 ?秘T?
Kaoru Maeda
?
Unified JVM Logging
Unified JVM LoggingUnified JVM Logging
Unified JVM Logging
Yuji Kubota
?
DDD + Clean Architecture: 楱菁鶺恬
DDD + Clean Architecture: 楱菁鶺恬DDD + Clean Architecture: 楱菁鶺恬
DDD + Clean Architecture: 楱菁鶺恬
teddysoft
?
階~室派プログラミングの弊順┨鶲婉2015
階~室派プログラミングの弊順┨鶲婉2015階~室派プログラミングの弊順┨鶲婉2015
階~室派プログラミングの弊順┨鶲婉2015
mametter
?
マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺
マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺
マイクロサ`ビスバックエンド粥永鴛のための檎掘皆意と乙檎永遺
disc99_
?

Similar to emruby: ブラウザで咾Ruby (20)

Ruby on Windows
Ruby on WindowsRuby on Windows
Ruby on Windows
Tomoya Kawanishi
?
珂姻顎恢霞の兵め圭
珂姻顎恢霞の兵め圭珂姻顎恢霞の兵め圭
珂姻顎恢霞の兵め圭
Masaki Muranaka
?
瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1
瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1
瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1
Takuya Mukohira
?
馨姻顎恢霞でゲ`ムを慕いてみた
馨姻顎恢霞でゲ`ムを慕いてみた馨姻顎恢霞でゲ`ムを慕いてみた
馨姻顎恢霞でゲ`ムを慕いてみた
Yousuke Kuroda
?
PHPer のための Ruby 縮片
PHPer のための Ruby 縮片PHPer のための Ruby 縮片
PHPer のための Ruby 縮片
higaki
?
X楚檎顎恢霞〆馨姻顎恢霞〇について
X楚檎顎恢霞〆馨姻顎恢霞〇についてX楚檎顎恢霞〆馨姻顎恢霞〇について
X楚檎顎恢霞〆馨姻顎恢霞〇について
Ryosuke MATSUMOTO
?
檎顎恢霞から遺#をQう
檎顎恢霞から遺#をQう檎顎恢霞から遺#をQう
檎顎恢霞から遺#をQう
107steps
?
mrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 dec
mrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 decmrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 dec
mrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 dec
Yoshito Tanaka
?
檎顎恢霞で赫雨鴛アプリケ`ションを慕く
檎顎恢霞で赫雨鴛アプリケ`ションを慕く檎顎恢霞で赫雨鴛アプリケ`ションを慕く
檎顎恢霞で赫雨鴛アプリケ`ションを慕く
Misao X
?
Ruby Enterprise Environment
Ruby Enterprise EnvironmentRuby Enterprise Environment
Ruby Enterprise Environment
Tomoya Kawanishi
?
mruby for embedded systems
mruby for embedded systemsmruby for embedded systems
mruby for embedded systems
masayoshi takahashi
?
閣珂を個めて僥んで需る
閣珂を個めて僥んで需る閣珂を個めて僥んで需る
閣珂を個めて僥んで需る
kishima7
?
檎顎恢霞遺看稼韓の三のAきのおはなし
檎顎恢霞遺看稼韓の三のAきのおはなし檎顎恢霞遺看稼韓の三のAきのおはなし
檎顎恢霞遺看稼韓の三のAきのおはなし
yamanekko
?
V6 Interpreter (Nagoya Geek Bar 2011-05-02)
V6 Interpreter (Nagoya Geek Bar 2011-05-02)V6 Interpreter (Nagoya Geek Bar 2011-05-02)
V6 Interpreter (Nagoya Geek Bar 2011-05-02)
7shi
?
Ruby|奨プレゼン Y創
Ruby|奨プレゼン Y創Ruby|奨プレゼン Y創
Ruby|奨プレゼン Y創
Kazuaki Tanaka
?
マニアックなRuby 2.7仟C嬬B初
マニアックなRuby 2.7仟C嬬B初マニアックなRuby 2.7仟C嬬B初
マニアックなRuby 2.7仟C嬬B初
mametter
?
Ruby と C# をつなぐ
Ruby と C# をつなぐRuby と C# をつなぐ
Ruby と C# をつなぐ
107steps
?
閣庄馨と檎顎恢霞のアツいvS
閣庄馨と檎顎恢霞のアツいvS閣庄馨と檎顎恢霞のアツいvS
閣庄馨と檎顎恢霞のアツいvS
Misao X
?
Ember コミュニティとわたし
Ember コミュニティとわたしEmber コミュニティとわたし
Ember コミュニティとわたし
Ryunosuke SATO
?
Rubinius Under a Microscope
Rubinius Under a MicroscopeRubinius Under a Microscope
Rubinius Under a Microscope
互レ 坪表
?
珂姻顎恢霞の兵め圭
珂姻顎恢霞の兵め圭珂姻顎恢霞の兵め圭
珂姻顎恢霞の兵め圭
Masaki Muranaka
?
瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1
瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1
瓢弌珍互 ソフトウェアテクノロジ`何 Rubyで[ぼう 1
Takuya Mukohira
?
馨姻顎恢霞でゲ`ムを慕いてみた
馨姻顎恢霞でゲ`ムを慕いてみた馨姻顎恢霞でゲ`ムを慕いてみた
馨姻顎恢霞でゲ`ムを慕いてみた
Yousuke Kuroda
?
PHPer のための Ruby 縮片
PHPer のための Ruby 縮片PHPer のための Ruby 縮片
PHPer のための Ruby 縮片
higaki
?
X楚檎顎恢霞〆馨姻顎恢霞〇について
X楚檎顎恢霞〆馨姻顎恢霞〇についてX楚檎顎恢霞〆馨姻顎恢霞〇について
X楚檎顎恢霞〆馨姻顎恢霞〇について
Ryosuke MATSUMOTO
?
檎顎恢霞から遺#をQう
檎顎恢霞から遺#をQう檎顎恢霞から遺#をQう
檎顎恢霞から遺#をQう
107steps
?
mrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 dec
mrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 decmrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 dec
mrubyボ`ドを聞って こんなことしてみました Kansai.mrb 2014 dec
Yoshito Tanaka
?
檎顎恢霞で赫雨鴛アプリケ`ションを慕く
檎顎恢霞で赫雨鴛アプリケ`ションを慕く檎顎恢霞で赫雨鴛アプリケ`ションを慕く
檎顎恢霞で赫雨鴛アプリケ`ションを慕く
Misao X
?
閣珂を個めて僥んで需る
閣珂を個めて僥んで需る閣珂を個めて僥んで需る
閣珂を個めて僥んで需る
kishima7
?
檎顎恢霞遺看稼韓の三のAきのおはなし
檎顎恢霞遺看稼韓の三のAきのおはなし檎顎恢霞遺看稼韓の三のAきのおはなし
檎顎恢霞遺看稼韓の三のAきのおはなし
yamanekko
?
V6 Interpreter (Nagoya Geek Bar 2011-05-02)
V6 Interpreter (Nagoya Geek Bar 2011-05-02)V6 Interpreter (Nagoya Geek Bar 2011-05-02)
V6 Interpreter (Nagoya Geek Bar 2011-05-02)
7shi
?
Ruby|奨プレゼン Y創
Ruby|奨プレゼン Y創Ruby|奨プレゼン Y創
Ruby|奨プレゼン Y創
Kazuaki Tanaka
?
マニアックなRuby 2.7仟C嬬B初
マニアックなRuby 2.7仟C嬬B初マニアックなRuby 2.7仟C嬬B初
マニアックなRuby 2.7仟C嬬B初
mametter
?
Ruby と C# をつなぐ
Ruby と C# をつなぐRuby と C# をつなぐ
Ruby と C# をつなぐ
107steps
?
閣庄馨と檎顎恢霞のアツいvS
閣庄馨と檎顎恢霞のアツいvS閣庄馨と檎顎恢霞のアツいvS
閣庄馨と檎顎恢霞のアツいvS
Misao X
?
Ember コミュニティとわたし
Ember コミュニティとわたしEmber コミュニティとわたし
Ember コミュニティとわたし
Ryunosuke SATO
?
Rubinius Under a Microscope
Rubinius Under a MicroscopeRubinius Under a Microscope
Rubinius Under a Microscope
互レ 坪表
?

More from mametter (20)

TRICK 2022 Results
TRICK 2022 ResultsTRICK 2022 Results
TRICK 2022 Results
mametter
?
クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創
クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創
クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創
mametter
?
Enjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProfEnjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProf
mametter
?
TypeProf for IDE: Enrich Development Experience without Annotations
TypeProf for IDE: Enrich Development Experience without AnnotationsTypeProf for IDE: Enrich Development Experience without Annotations
TypeProf for IDE: Enrich Development Experience without Annotations
mametter
?
Ruby 3の侏盾裂に鬚韻甚鮫
Ruby 3の侏盾裂に鬚韻甚鮫Ruby 3の侏盾裂に鬚韻甚鮫
Ruby 3の侏盾裂に鬚韻甚鮫
mametter
?
Type Profiler: Ambitious Type Inference for Ruby 3
Type Profiler: Ambitious Type Inference for Ruby 3Type Profiler: Ambitious Type Inference for Ruby 3
Type Profiler: Ambitious Type Inference for Ruby 3
mametter
?
Ruby 3の侏容やってます
Ruby 3の侏容やってますRuby 3の侏容やってます
Ruby 3の侏容やってます
mametter
?
A Static Type Analyzer of Untyped Ruby Code for Ruby 3
A Static Type Analyzer of Untyped Ruby Code for Ruby 3A Static Type Analyzer of Untyped Ruby Code for Ruby 3
A Static Type Analyzer of Untyped Ruby Code for Ruby 3
mametter
?
A Plan towards Ruby 3 Types
A Plan towards Ruby 3 TypesA Plan towards Ruby 3 Types
A Plan towards Ruby 3 Types
mametter
?
Ruby 3 の侏盾裂に鬚韻甚鮫
Ruby 3 の侏盾裂に鬚韻甚鮫Ruby 3 の侏盾裂に鬚韻甚鮫
Ruby 3 の侏盾裂に鬚韻甚鮫
mametter
?
A Type-level Ruby Interpreter for Testing and Understanding
A Type-level Ruby Interpreter for Testing and UnderstandingA Type-level Ruby Interpreter for Testing and Understanding
A Type-level Ruby Interpreter for Testing and Understanding
mametter
?
云桑桟廠で聞えるg佩コ`ド芝h字嬬
云桑桟廠で聞えるg佩コ`ド芝h字嬬云桑桟廠で聞えるg佩コ`ド芝h字嬬
云桑桟廠で聞えるg佩コ`ド芝h字嬬
mametter
?
Transcendental Programming in Ruby
Transcendental Programming in RubyTranscendental Programming in Ruby
Transcendental Programming in Ruby
mametter
?
Cookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own InterpreterCookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own Interpreter
mametter
?
Ruby 3のキ`ワ`ド哈方について深える
Ruby 3のキ`ワ`ド哈方について深えるRuby 3のキ`ワ`ド哈方について深える
Ruby 3のキ`ワ`ド哈方について深える
mametter
?
TRICK 2018 results
TRICK 2018 resultsTRICK 2018 results
TRICK 2018 results
mametter
?
Type Profiler: An Analysis to guess type signatures
Type Profiler: An Analysis to guess type signaturesType Profiler: An Analysis to guess type signatures
Type Profiler: An Analysis to guess type signatures
mametter
?
Esoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in RubyEsoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in Ruby
mametter
?
Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創
Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創
Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創
mametter
?
Esoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in RubyEsoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in Ruby
mametter
?
TRICK 2022 Results
TRICK 2022 ResultsTRICK 2022 Results
TRICK 2022 Results
mametter
?
クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創
クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創
クックパッド敢の階~室派パンまつり 階~室派プログラミング Y創
mametter
?
Enjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProfEnjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProf
mametter
?
TypeProf for IDE: Enrich Development Experience without Annotations
TypeProf for IDE: Enrich Development Experience without AnnotationsTypeProf for IDE: Enrich Development Experience without Annotations
TypeProf for IDE: Enrich Development Experience without Annotations
mametter
?
Ruby 3の侏盾裂に鬚韻甚鮫
Ruby 3の侏盾裂に鬚韻甚鮫Ruby 3の侏盾裂に鬚韻甚鮫
Ruby 3の侏盾裂に鬚韻甚鮫
mametter
?
Type Profiler: Ambitious Type Inference for Ruby 3
Type Profiler: Ambitious Type Inference for Ruby 3Type Profiler: Ambitious Type Inference for Ruby 3
Type Profiler: Ambitious Type Inference for Ruby 3
mametter
?
Ruby 3の侏容やってます
Ruby 3の侏容やってますRuby 3の侏容やってます
Ruby 3の侏容やってます
mametter
?
A Static Type Analyzer of Untyped Ruby Code for Ruby 3
A Static Type Analyzer of Untyped Ruby Code for Ruby 3A Static Type Analyzer of Untyped Ruby Code for Ruby 3
A Static Type Analyzer of Untyped Ruby Code for Ruby 3
mametter
?
A Plan towards Ruby 3 Types
A Plan towards Ruby 3 TypesA Plan towards Ruby 3 Types
A Plan towards Ruby 3 Types
mametter
?
Ruby 3 の侏盾裂に鬚韻甚鮫
Ruby 3 の侏盾裂に鬚韻甚鮫Ruby 3 の侏盾裂に鬚韻甚鮫
Ruby 3 の侏盾裂に鬚韻甚鮫
mametter
?
A Type-level Ruby Interpreter for Testing and Understanding
A Type-level Ruby Interpreter for Testing and UnderstandingA Type-level Ruby Interpreter for Testing and Understanding
A Type-level Ruby Interpreter for Testing and Understanding
mametter
?
云桑桟廠で聞えるg佩コ`ド芝h字嬬
云桑桟廠で聞えるg佩コ`ド芝h字嬬云桑桟廠で聞えるg佩コ`ド芝h字嬬
云桑桟廠で聞えるg佩コ`ド芝h字嬬
mametter
?
Transcendental Programming in Ruby
Transcendental Programming in RubyTranscendental Programming in Ruby
Transcendental Programming in Ruby
mametter
?
Cookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own InterpreterCookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own Interpreter
mametter
?
Ruby 3のキ`ワ`ド哈方について深える
Ruby 3のキ`ワ`ド哈方について深えるRuby 3のキ`ワ`ド哈方について深える
Ruby 3のキ`ワ`ド哈方について深える
mametter
?
TRICK 2018 results
TRICK 2018 resultsTRICK 2018 results
TRICK 2018 results
mametter
?
Type Profiler: An Analysis to guess type signatures
Type Profiler: An Analysis to guess type signaturesType Profiler: An Analysis to guess type signatures
Type Profiler: An Analysis to guess type signatures
mametter
?
Esoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in RubyEsoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in Ruby
mametter
?
Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創
Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創
Cookpad Spring 1day internship 2018 階~室派プログラミングコ`スY創
mametter
?
Esoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in RubyEsoteric, Obfuscated, Artistic Programming in Ruby
Esoteric, Obfuscated, Artistic Programming in Ruby
mametter
?

Recently uploaded (6)

2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓
2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓
2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓
票弥
?
雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初
雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初
雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初
雨-22プログラミング?コンテスト塰喨体饐
?
カスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジ
カスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジカスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジ
カスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジ
info819904
?
楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚
楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚
楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚
info819904
?
尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)
尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)
尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)
NTT DATA Technology & Innovation
?
徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別
徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別
徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別
sugiuralab
?
2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓
2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓
2019敬喝叫奨寄僥寄僥垪誰直冩梢片喝僥伏冩梢埀票弥儚絽薜娵」釀娑k燕氏スライト?.沿糸韓
票弥
?
雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初
雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初
雨-22プログラミング?コンテスト戻竃彿創仝恬瞳h苧強鮫々崙恬のポイントをご府初
雨-22プログラミング?コンテスト塰喨体饐
?
カスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジ
カスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジカスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジ
カスタム皆晦珂仝堰温馨壊岳艶姻々喝X楚でセキュアな喘冱囂モデル喝粥鴛エ`ジェント喝チャットボット喝マッチングアプリ更廏のコアパッケ`ジ
info819904
?
楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚
楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚
楚徨リザバソフトウェア喝扮狼双デ`タ滴匍?宰蛮栽?俶勣嚠霞森編^喝擬秘による撹惚
info819904
?
尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)
尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)
尖レプリケ`ションのア`キテクチャ (及52指 PostgreSQLアンカンファレンス@オンライン k燕Y創)
NTT DATA Technology & Innovation
?
徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別
徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別
徭喇に卞強する鹸方の??に呟なる啌颪鯡?するテ?ィスフ?レイシステムについての児粥別
sugiuralab
?

emruby: ブラウザで咾Ruby