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
WASIの話(2019 July, Emscripten & WebAssembly nigh...
Search
Tetsuharu Ohzeki
July 24, 2019
Programming
1
480
WASIの話(2019 July, Emscripten & WebAssembly night !! #8 )
Emscripten & WebAssembly night !! #8
https://emsn.connpass.com/event/136346/
での発表
Tetsuharu Ohzeki
July 24, 2019
Tweet
Share
More Decks by Tetsuharu Ohzeki
See All by Tetsuharu Ohzeki
Lessons by WebAssembly app in production on CDN Edge Computing Service
tetsuharuohzeki
0
210
Your benchmark may not guide real application performance
tetsuharuohzeki
4
3.4k
Summary of JavaScript Standard Library (Stage 1) Proposal
tetsuharuohzeki
0
400
Client-side JS for infeed layout native ad at fluct SSP
tetsuharuohzeki
2
1.9k
beyondtheflux-150927075557-lva1-app6892.pdf
tetsuharuohzeki
0
100
Introduction to Rx without saying "reactive" or "functional"
tetsuharuohzeki
6
960
Servo inside (Introduction to Servo's DOM binding), Gecko Inside #6
tetsuharuohzeki
0
32
Other Decks in Programming
See All in Programming
開発を加速する共有Swift Package実践
elmetal
PRO
0
410
connect-go で面倒くささと戦う / 2024-08-27 #newmo_layerx_go
izumin5210
2
640
あなたのアプリ、ログはでてますか?あるいはログをだしてますか? (Funabashi.dev用 軽量版)
uzulla
2
120
unique パッケージから学ぶ interning と weak reference @ Asakusa.go#3
karamaru
2
800
watsonx.ai Dojo #2 生成AIを使ったアプリ開発入門編
oniak3ibm
PRO
0
110
Debugging: All you need to know (for simultaneous interpreting)
jmatsu
2
760
The Sequel to a Dream of Ruby Parser's Grammar
ydah
1
220
Ebitengineの1vs1ゲーム WebRTCの活用
ponyo877
0
380
マイグレーションコード自作して File-Based Routing に自動移行!! ~250 ページの歴史的経緯を添えて~
cut0
1
260
Developer Joy == Developer Productivity (really!)
hollycummins
1
180
Perl 5 OOP機構30年史 - Perl 5's OOP Mechanism over the past 30 years
moznion
0
100
Some more adventure of Happy Eyeballs
coe401_
2
180
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
Teambox: Starting and Learning
jrom
131
8.7k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.9k
Robots, Beer and Maslow
schacon
PRO
157
8.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
41
6.5k
How GitHub Uses GitHub to Build GitHub
holman
472
290k
Designing with Data
zakiwarfel
98
5k
The Invisible Customer
myddelton
119
13k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
Transcript
8"4*ʹ͍ͭͯ TBOFZVLJ@T
8"4.͓͞Β͍ w ͦͦ͜͜ͷQFSGPSNBODFͰTFDVSFʹಈ͔ͤΔ ʢͷ͕ظͰ͖Δʣ*4" w 1PSUBCMF 4BOECPYͳ&YFDVUBCMFϑΥʔϚοτͱͯ͠ ͷ࠾༻ͷ֦େ w FH'BTUMZ5FSSBSJVN
1PSUBCJMJUZ1SPCMFN w ϒϥβҎ֎Ͱ࣮ߦ͠Α͏ͱͨ͠߹ɺ"1*ͷඪ४ηοτ ͕ͳ͍ w ຒΊࠐΉଆ͕ຖճఆ͍͍͕ٛͯͣͩ͠ʜʜ w Կͳ͍ΑΓ͋ͬͨ΄͏͕͍͍
8"4* • The WebAssembly System Interface • ϒϥβͷ֎Ͱಈ͔ͨ͢ΊͷinterfaceΛఆٛ͢Δ • Mozilla
+ Fastly + npm + Node.jsͳ࠲Έ • https://hacks.mozilla.org/2019/03/standardizing-wasi-a-webassembly-system-interface/ • designશମతʹunstableͱڧௐ͞Ε͍ͯΔͷཱ͕ͭ
"SDIJUFDUVSF0WFSWJFX IUUQTSBXHJUIVCVTFSDPOUFOUDPN$SBOF4UBUJPOXBTNUJNFNBTUFSEPDTXBTJTPGUXBSFBSDIJUFDUVSFQOH
"#* VOTUBCMF w _start() w ϓϩάϥϜͷར༻͢ΔΤϯτϦʔϙΠϯτ w XBTNMME͕ظ͢ΔσϑΥϧτ໊ w XBTNͷTUBSUηΫγϣϯॳظԽͱ॥ࢀরͳͲͷͰ
ݱࡏ༻ͤͣ w memory w ϓϩάϥϜͷར༻͢ΔઢܗϝϞϦۭؒ w "1*ͷଟ͕͘IPTUBQQMJDBUJPOؒͰϝϞϦΛڞ༻ͯ͠Δલఏʹཱ͍ͬͯ ΔͷͰFYQPSUඞਢ
"1* w 104*9MJLF w ͨͩ͠NNBQͱ͔ແ͍ w ൺֱత͍ԾϝϞϦΞυϨεۭؒͷཁٻʹ ͭͳ͕ΔͨΊ w TPDLFUपΓݶఆత
w$BQBCJMJUZ0SJFOUFE%FTJHO
$BQBCJMJUZ0SJFOUFE%FTJHO w ແ੍ݶͳϦιʔεͷΞΫηεΛڐ༰͠ͳ͍ w 8"4*Ͱ$MPVE"#* $BQTJDVN Λయڌͱ͍ͯ͠Δ w pMFEFTDSJQUPSʹجͮ͘ΞΫηεཧ w
PQFO Ͱͳ͘PQFOBU
)PXUPOFUXPSLJOH w TPDLFU DPOOFDU MJTUFO ʹ૬͢Δ"1*ͳ͍ͷͰ ҙͷTPDLFU௨৴࢝ΊΔͷແཧ • remember capability
oriented design • c.f. CloudABI֎෦ʹconfigΛఆٛ͢Δ͜ͱͰରॲ w @@XBTJ@TPDL@SFDW ͱ@@XBTJ@TPDL@TFOE ͋Δ w 'JMFEFTDSJQUPS͑͞༻ҙͰ͖ΕϝοηʔδΛड͚औΔ͜ͱ Մೳ
/FUXPSLJNQMFNFOUBUJPO w ઐ༻ͷOFUXPSLMJCSBSZΛΘͤΔ࣮͕ଟ͍ w -VDFU w l8FTVQQPSUUIFFOUJSF8"4*"1* XJUIUIFFYDFQUJPOPGTPDLFU SFMBUFETZTDBMMT5IFTFXJMMCFBEEFEXIFOOFUXPSLBDDFTTJT TUBOEBSEJ[FEz
w XBTNFS w LFSOFMOFUDSBUFܦ༝Ͱݺͼग़͢
·ͱΊ w XBTNॲཧܥ࡞ͬͯΔਓݟ͓͍ͯͨ΄͏͕͍͍͔Ͷ w XBTNUJNFXBTNFSͷFNCFEEFEͰࡁΉ߹͋Μ· Γؔͳͦ͞͏