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
810
Getting Started with Swift WebAssembly
iOSDC 2019
Yuta Saito
September 07, 2019
Tweet
Share
More Decks by Yuta Saito
See All by Yuta Saito
The Evolution of the CRuby Build System
kateinoigakukun
3
990
Running Swift on WebAssembly Platforms
kateinoigakukun
0
160
What you can do with Ruby on WebAssembly
kateinoigakukun
1
1.6k
RubyGems on ruby.wasm
kateinoigakukun
1
5.9k
Building a Smaller App Binary
kateinoigakukun
2
640
The new linker in Xcode 15
kateinoigakukun
4
4.2k
Optimizing your Swift code
kateinoigakukun
0
2.5k
Ruby & WebAssembly Introduction
kateinoigakukun
0
2.6k
Swift KeyPath Internals
kateinoigakukun
0
510
Other Decks in Programming
See All in Programming
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
7
4.3k
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
130
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
3.3k
ThorVG Viewer In VS Code
nors
0
600
Python札幌 LT資料
t3tra
7
1.1k
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
530
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
15
4.4k
[AI Engineering Summit Tokyo 2025] LLMは計画業務のゲームチェンジャーか? 最適化業務における活⽤の可能性と限界
terryu16
2
240
SQL Server 2025 LT
odashinsuke
0
120
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
200
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
150
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
310
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Git: the NoSQL Database
bkeepers
PRO
432
66k
A Soul's Torment
seathinner
2
2.1k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
0
1k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
690
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Navigating Weather and Climate Data
rabernat
0
65
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
WCS-LA-2024
lcolladotor
0
400
Site-Speed That Sticks
csswizardry
13
1k
A better future with KSS
kneath
240
18k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
1
340
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