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.3k
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
Is Xcode slowly dying out in 2025?
uetyo
1
190
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
100
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
250
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
1
370
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
310
Deep Dive into ~/.claude/projects
hiragram
8
1.4k
CursorはMCPを使った方が良いぞ
taigakono
1
170
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
2
260
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
300
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
370
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
310
Featured
See All Featured
Being A Developer After 40
akosma
90
590k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Statistics for Hackers
jakevdp
799
220k
Agile that works and the tools we love
rasmusluckow
329
21k
Gamification - CAS2011
davidbonilla
81
5.3k
4 Signs Your Business is Dying
shpigford
184
22k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Documentation Writing (for coders)
carmenintech
72
4.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
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Λ͏·͘͏ͱεοΩϦॻ͚Δ