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
2
4.4k
WebAssemblyを Rubyにコンパイルする 黒魔術コード完全解説
Tama Ruby会議01の発表資料です
alice345
July 06, 2019
Tweet
Share
More Decks by alice345
See All by alice345
高専カンファレンスというコミュニティ
alice345
0
1.1k
Other Decks in Programming
See All in Programming
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
2k
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
280
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
4.7k
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
15k
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.3k
AWS CDKの推しポイントN選
akihisaikeda
1
200
詳細の決定を遅らせつつ実装を早くする
shimabox
2
1.3k
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
190
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
2
9.3k
DartASTとその活用
sotaatos
2
150
モダンJSフレームワークのビルドプロセス 〜なぜReactは503行、Svelteは12行なのか〜
fuuki12
0
120
TypeScript 5.9 で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
440
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
980
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
How STYLIGHT went responsive
nonsquared
100
5.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
680
Code Reviewing Like a Champion
maltzj
527
40k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
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Λ͏·͘͏ͱεοΩϦॻ͚Δ