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
Getting Started with Swift WebAssembly
Search
Yuta Saito
September 07, 2019
Programming
1
830
Getting Started with Swift WebAssembly
iOSDC 2019
Yuta Saito
September 07, 2019
Tweet
Share
More Decks by Yuta Saito
See All by Yuta Saito
Swift at Scale: Where Performance Really Comes From
kateinoigakukun
0
130
The Evolution of the CRuby Build System
kateinoigakukun
3
1k
Running Swift on WebAssembly Platforms
kateinoigakukun
0
190
What you can do with Ruby on WebAssembly
kateinoigakukun
1
1.7k
RubyGems on ruby.wasm
kateinoigakukun
1
5.9k
Building a Smaller App Binary
kateinoigakukun
2
660
The new linker in Xcode 15
kateinoigakukun
4
4.3k
Optimizing your Swift code
kateinoigakukun
0
2.6k
Ruby & WebAssembly Introduction
kateinoigakukun
0
2.8k
Other Decks in Programming
See All in Programming
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
430
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
190
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
360
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
150
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
850
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1.1k
Claude Code Skill入門
mayahoney
0
400
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
120
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
540
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
180
文字コードの話
qnighy
44
17k
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
460
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Fireside Chat
paigeccino
42
3.8k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
53k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
YesSQL, Process and Tooling at Scale
rocio
174
15k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
120
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
130
SEO for Brand Visibility & Recognition
aleyda
0
4.4k
GitHub's CSS Performance
jonrohan
1032
470k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
350
Transcript
(FUUJOH4UBSUFEXJUI4XJGU 8FC"TTFNCMZ J04%$ !LBUFJOPJHBLVLVO 1
4XJGU8"4.Ͱ։ൃͯ͠Έͨ 2
4XJGU8"4.Ͱ։ൃͯ͠Έͨ 4XJGU8"4.Λ։ൃ͢Δ 3
8"4. 8FC"TTFNCMZ ϒϥβͰಈ࡞͢Δڃݴޠ • ϙʔλϒϧ • ηΩϡΞ • ελοΫϚγϯ 4
4XJGUͰ8FCϑϩϯτΛॻ͖͍ͨʂʂ 5
4XJGUͷ8"4.ύΠϓϥΠϯ 6
4XJGUͷ8"4.ύΠϓϥΠϯ 7
--7.ͱ4XJGUͷؔ SwiftಠࣗͷLLVMଐੑ https://github.com/apple/swift-llvm • swiftself • swifterror 8
5ISPXTͳؔݺͼग़͠ typealias NonThrowableFunc = () -> Void typealias ThrowableFunc =
() throws -> Void let f: NonThrowableFunc = {} let g: ThrowableFunc = f try g() 9
/PO5ISPXBCMF'VOD5ISPXBCMF'VOD 10
ϥϯλΠϜදݱ 4XJGU෩ typealias NonThrowableFunc = () -> Void typealias ThrowableFunc
= (inout Error) -> Void let f: NonThrowableFunc = {} let g: ThrowableFunc = f var error: Error try g(&error) Ҿͷ͕૿͑ͯΔ https://speakerdeck.com/omochi/swiftfalseguan-shu-xing-falseshi-xing-shi-biao-xian 11
TXJGUFSSPSͱ8"4.ϥϯλΠϜ ؔݺͼग़࣌͠ͷγάωνϟνΣοΫ -> callerͷݺͼग़ͦ͏ͱ͍ͯ͠Δγάωνϟͱcallee ͷγάωνϟ͕Ұக͠ͳ͍ͷͰΫϥογϡ https://webassembly.org/docs/security/ 12
ରԠࡦ શͯͷؔʹswifterrorΛ͚ͯίʔυੜ͢Δɻ https://github.com/apple/swift/pull/24684#issuecomment-491487863 13
·ͱΊ • LLVMΛ͍ͬͯͯ؆୯ʹ͍͔ͳ͍ • SwiftͷWASMରԠ͏গͬͯ͠Ͷ 14
15