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
WebAssemblyを Rubyにコンパイルする 黒魔術コード完全解説
Search
alice345
July 06, 2019
Programming
4.5k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WebAssemblyを Rubyにコンパイルする 黒魔術コード完全解説
Tama Ruby会議01の発表資料です
alice345
July 06, 2019
More Decks by alice345
See All by alice345
高専カンファレンスというコミュニティ
alice345
0
1.1k
Other Decks in Programming
See All in Programming
技術記事、 専門家としてのプログラマ、 言語化
mizchi
14
7.2k
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
260
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.7k
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
150
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
140
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
420
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
290
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
140
Creating Composable Callables in Contemporary C++
rollbear
0
180
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
4
640
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
280
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
180
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
360
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
[SF Ruby Conf 2025] Rails X
palkan
2
1.1k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
300
RailsConf 2023
tenderlove
30
1.5k
Agile that works and the tools we love
rasmusluckow
331
22k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
The Cost Of JavaScript in 2023
addyosmani
55
10k
HDC tutorial
michielstock
2
730
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
880
Transcript
8FC"TTFNCMZΛ 3VCZʹίϯύΠϧ͢Δ ࠇຐज़ίʔυશղઆ !BMJUBTP !5BNB3VCZձٞ
ࣗݾհ w ؙࢁ͋Γ͢ w 5XJUUFS!BMJUBTP w (JU)VC!BMJUBTP w ॴଐϐΫγϒגࣜձࣾ
8FC"TTFNCMZͱ $$ 3VTU &NTDSJQUFO ίϯύΠϥ XBTN 8FC"TTFNCMZόΠφϦ
8FC"TTFNCMZͱ $$ 3VTU &NTDSJQUFO ίϯύΠϥ XBTN 8FC"TTFNCMZόΠφϦ )5.-
+4 ϒϥβ্Ͱಈ࡞
8FC"TTFNCMZͱ3VCZ 3VCZPO8FC"TTFNCMZ5PN#MBDLIUUQXXXCMBDLUNDPNCMPHSVCZPOXFCBTTFNCMZ NSVCZ $ XBTN )5.- +4 NSVCZΛϒϥβ্Ͱಈ࡞
8FC"TTFNCMZΛ3VCZͰಈ͔͢ $$ 3VTU &NTDSJQUFO XBTN հͨ͠ྫ ຊൃදͰऔΓ্͛Δ Ξϓϩʔν XBTN
3VCZ XBTNॲཧܥ 3VCZ
ʮXBHZVʯ3VCZͷXBTNॲཧܥ XBTN 3VCZ XBHZV w 1VSF3VCZXBTNॲཧܥɺXBHZV ڇ Λհ w IUUQTHJUIVCDPNFEWBLGXBHZV
w 3VCZ,BJHJޙɺ!FEWBLG͞ΜͱҰॹʹ։ൃΛਐΊ͍ͯΔ w ຊൃදͰXBHZVͷղͳ෦Λղઆ
XBTNͷόΠφϦܗࣜ όΠφϦܗࣜ
XBTNͷςΩετܗࣜ ςΩετܗࣜ
XBHZVͷΞϓϩʔν XBHZV ςΩετܗࣜ 3VCZͷίʔυ தؒදݱ͔Β3VCZͷίʔυʹมͯ͠FWBM͢Δ
XBHZVͷΞϓϩʔν XBHZV ςΩετܗࣜ 3VCZͷίʔυ தؒදݱ͔Β3VCZͷίʔυʹมͯ͠FWBM͢Δ ม͕ҰےೄͰ͍͔ͳ͍ྫ
੍ޚ໋ྩͱCS w 8FC"TTFNCMZʹҎԼͷΑ͏ͳ੍ޚ໋ྩ͕͋Δ w JGCMPDLMPPQCSCS@JGCS@UBCMFSFUVSODBMMMDBMM@JOEJSFDU
XBTNͷzCSz w CSEFQUI ϒϩοΫͷਂ͞ ͋Δ͍λάΛҾʹࢦఆ w JGจΛൈ͚ͨΓɺMPPQΛ܁Γฦͨ͠Γ͢Δͷʹ͏
XBTNͷzCMPDLz 8FC"TTFNCMZ 3VCZ ม w XBTNͷzCMPDLz3VCZͷXIJMF USVF CSFBLFOEͰදݱͰ͖Δ w XBTNͷzCSz3VCZͷCSFBLʹରԠ
XBTNͷzCMPDLzͱzCMPDLz w XBTNͷzCMPDLzͱzCMPDLz͕ωετ w XBTNͷzCSz3VCZͷUISPXDBUDIʹରԠ 3VCZ 8FC"TTFNCMZ ม
XBTNͷzMPPQzͱzCMPDLͷωετ 8FC"TTFNCMZ ςΩετܗࣜ 3VCZ ม w XBTNͷzMPPQzͱzCMPDLz͕ωετ w MPPQͷઌ಄ʹΔͨΊͷม͕ඞཁ
ωετͷൈ͚ํΛߟ͑͢ w Ұؾʹ֎ଆ·Ͱൈ͚Α͏ͱ ͢Δͱ໘ w CSFBL UISPXDBUDI OFYU ͲΕΛ͏͔
ωετͷਂ͞ͱ੍ޚ໋ྩ ʹΑͬͯΘΔ
ஈ֊తʹωετΛൈ͚Δ ࠷دΓͷωετ͔Βൈ͚͍ͨ ݸ֎ଆͷωετ͔Βൈ͚͍ͨ ݸ֎ଆͷωετ͔Βൈ͚͍ͨ CSͷҾ ग़͍ͨ͠ωετͷਂ͞ Λ ग़͠ͳ͕Β֎֎͍͑ͯ͘3VCZίʔυʹม
ಥવͰ͕͢Ͱ͢ w l)FMMP8PSMEzͱग़ྗ͞ΕΔ3VCZ ͷίʔυʹม͍ͨ͠ w ʹڞ௨ͯ͠ೖΔͷ ͳΜͰ͠ΐ͏ "SFUVSO #CSFBL
$OFYU
SFUVSOΛͬͨ߹ w มEFQUI ग़͍ͨ͠ωετͷஈ w ͜ͷίʔυͰΓ͍ͨ͜ͱ CSͷҾΛϒϩοΫΛग़ ͠ͳ͕Β֎֎ͱ͍͑ͯ͘ IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC-
SFUVSOΛͬͨ߹ w MBNCEBͰSFUVSO खଓ͖Λதஅ͠Λฦ͢ w CSΛSFUVSOͱஔ͖͓͑ͯΓ ϧʔϓͷઌ಄ʹδϟϯϓ͍ͨ͠ IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC-
SFUVSOΛͬͨ߹ w @MPPQϝιουͷϒϩοΫͰ SFUVSO @MPPQϝιουΛൈ͚Δ ϧʔϓ͠ͳ͍ SFUVSOͨ͠ Λฦ͢
IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC-
CSFBLͷ߹ IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC- w @MPPQϝιουͷϒϩοΫͰ CSFBL @MPPQϝιουΛதஅ OFYU·Ͱ౸ୡͤͣ l)FMMPz
w @MPPQϝιουͷϒϩοΫͰ OFYU ݺͼग़͠ݩ ZJFME ʹΔ ΓOFYUͷҾ ϧʔϓͷઌ಄ʹΕΔ OFYUͷ߹ IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC-
OFYUͷ߹ w ࠶ͼJGจΛ࣮ߦ ࠓFMTF ͳͷͰϧʔϓͤͣग़͍ͨ͠ IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC-
OFYUͷ߹ w ࠶ͼJGจΛ࣮ߦ ࠓFMTF w ZJFMEͷΓ͔ͩΒϧʔϓͤͣ w @MPPQΛฦ͢ IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC-
w @CMPDLϝιουͷϒϩοΫͰ OFYU ݺͼग़͠ݩͷZJFMEʹΓ Λฦ͢ IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC- OFYUͷ߹
w @CMPDLϝιουͷϒϩοΫͰ OFYU ݺͼग़͠ݩͷZJFMEʹΓ Λฦ͢ w ແࣄʹωετΛൈ͚ͯ l)FMMP8PSMEz OFYUͷ߹
IUUQTHJUIVCDPNFEWBLGXBHZVCMPCDFFFCCCDCEFCBDFMJCXBHZVXBTNNPEVMFSC-
CSΛ3VCZͰ؆୯ʹѻ͏ͨΊͷϙΠϯτ w 8FC"TTFNCMZͷzCS3VCZͷOFYUʹม w 8FC"TTFNCMZͷJGCMPDLMPPQɺQSPD·ͨCMPDLΛҾʹͱΔ ϝιουʹΓग़ͯ͠EFQUI͔Β࢝ΊΔ w ϒϩοΫऴͰOFYUEFQUIΛฦͯ͠ɺͭϒϩοΫΛग़͢Δ w ͜ΕΒΛڞ௨ͯ͠͏͜ͱͰ੍ޚ໋ྩͷҧ͍ɺωετͷਂ͞Λҙࣝͤͣ
3VCZʹมՄೳ
·ͱΊ w 8FC"TTFNCMZΛ3VCZʹίϯύΠϧ͢Δίʔυͷ࣮ͱಈ࡞ྫΛհ w ϝλϓϩάϥϛϯάύλʔϯͷ͏ͪɺಈతͳϝιουఆٛΛ͍ 8FC"TTFNCMZͷؔΛ3VCZͷϝιουʹίϯύΠϧ͢Δ w 8FC"TTFNCMZͷJGCMPDLMPPQͱCSΛ3VCZʹίϯύΠϧ͢Δࡍ QSPDΦϒδΣΫτͱOFYUΛ͏·͘͏ͱεοΩϦॻ͚Δ