Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
最新のWasm事情
Search
asuka
October 18, 2024
Technology
3.2k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
最新のWasm事情
Niigata5分Tech #13 1周年記念
https://niigata-5min-tech.connpass.com/event/332786/
asuka
October 18, 2024
More Decks by asuka
See All by asuka
GoとSIMDとWasmの今。
askua
3
630
2025年ふりかえり
askua
1
250
ライブラリを公開してメンテナンスした一年
askua
0
120
Wasmの気になる最新情報
askua
1
410
Wasmのエコシステムを使った ツール作成方法
askua
0
460
Pure Goで体験するWasmの未来
askua
1
1.1k
Wasmで社内ツールを作って配布しよう
askua
0
340
Wasm元年
askua
0
410
wstdなんだか良さそう
askua
0
160
Other Decks in Technology
See All in Technology
分析AIエージェントを育てる、動く環境を育てる
codatum
1
360
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
160
FactoryBotアンチパターン / factory_bot anti-patterns
toshimaru
0
140
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
170
SREでアラート疲れを 解決しよう!
kairim0
1
210
20260930_Gemma4_Hands-on
tsho
0
240
予測不能な実行エージェントを安全にサクッと試せるサンドボックス環境の話
sansantech
PRO
0
130
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
450
Claude Code本は、どのように執筆チームで書かれたか
oikon48
0
330
実体験から学ぶ分析エージェントの開発と運⽤
recruitengineers
PRO
6
1.5k
スキルを作る、その前に!複数人で使われるスキルを 作るためのプロセス
junkifurukawa
2
350
ビジネスを止めない技術的負債の返済のための戦略とその手法 - 技術的負債と向き合う / Complexity and Simplicity
soudai
PRO
3
660
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
550
New Earth Scene 8
popppiees
4
2.7k
How to Ace a Technical Interview
jacobian
280
24k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
510
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
260
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Six Lessons from altMBA
skipperchong
29
4.5k
Done Done
chrislema
187
17k
Typedesign – Prime Four
hannesfritz
42
3.2k
Transcript
最新のWasm事情 2024.10.18 N5T#13
asuka (@a_skua) • 株式会社モニクル ◦ SWE / プロダクトSRE • WebAssemblyの同人誌を書いている人
◦ WebAssemblyでできること ▪ 商業誌:実践入門WebAssembly ◦ ご注文はWASIですか? ◦ ご注文はWASIですか?? ▪ 商業誌:WebAssembly System Interface入門 ◦ WebAssembly Cookbook vol.1 2 WHOIS
Niigata 5分 Tech 結構参加している 3 • N5T#5 AssemblyScriptではじめるWebAssembly入門 • N5T#8
技術書典16オフライン振り返り • N5T#10 エンジニアコミュニティ • N5T#12 夏の思い出 • N5T#12 go:wasmexport • N5T#13 祝1周年 東京から飲みにきた
最近発売されたWasmの本
5 9月20日発売. → 著書です.買ってね❤ WASI 0.1と0.2の仕様の紹介をする内容. コンポーネントモデルについても扱っている. 最近発売されたWasmの本
6 10月10日発売. → Wasmの最新事情を扱っている本 コンポーネントモデルを使ったWasmの開発の紹介 をしている. 最近発売されたWasmの本
キーワード 「コンポーネントモデル」
コンポーネントモデルとは 従来のWasm • モジュールが1つの単位 • 1バイナリ1モジュール • ESモジュールのようなものだと思ってもらってOK これからのWasm •
複数のモジュールを組み合わせたコンポーネントが1つの単位 • コンポーネント同士の合成もできる 8
よくわからないよね
コンポーネントモデルとは 従来のWasm • モジュールが1つの単位 • 1バイナリ1モジュール • ESモジュールのようなものだと思ってもらってOK これからのWasm •
複数のモジュールを組み合わせたコンポーネントが1つの単位 • コンポーネント同士の合成もできる 10 VMの定義 • どういう命令セットがあるか? データフォーマットの定義 • stringはメモリ上でどう表現されるのか?
• データ定義をするためのIDL「WITを提供」 • WITに対応するABIが定義されている → WITからコードを自動生成できる コンポーネントモデルとは 11 record customer
{ id: u64, name: string, picture: option<list<u8>>, account-manager: employee, } enum color { hot-pink, lime-green, navy-blue, } example.wit 高レイヤーのデータ型を定義できる ProtobufやGraphQLと同じ世界観
コンポーネントモデルとは 12 record customer { id: u64, name: string, picture:
option<list<u8>>, account-manager: employee, } enum color { hot-pink, lime-green, navy-blue, } example.wit インターフェースをexportするためのコードを生成 インターフェースをimportするためのコードを生成 Wasmコンポーネントにビルド Wasmコンポーネントにビルド ( `・ω・´) COMPOSE!! ≡⊃C⊂≡ Wasmコンポーネント
サーバーサイドだけじゃない
コンポーネントモデルとは 14 record customer { id: u64, name: string, picture:
option<list<u8>>, account-manager: employee, } enum color { hot-pink, lime-green, navy-blue, } example.wit インターフェースをexportするためのコードを生成 Wasmをimportするためのグルーコードを生成 Wasmモジュールにビルド Wasmのimport フロントエンドの実装 グルーコードのimport こういうこともできる
コンポーネントモデルとは 15 record customer { id: u64, name: string, picture:
option<list<u8>>, account-manager: employee, } enum color { hot-pink, lime-green, navy-blue, } example.wit インターフェースをexportするためのコードを生成 Wasmをimportするためのグルーコードを生成 Wasmモジュールにビルド Wasmのimport フロントエンドの実装 グルーコードのimport Microsoftがwit2tsを作っている https://github.com/microsoft/vscode-wasm
技術書典17で同人誌として出します 16 まだ1章しか書いてないのは内緒 WebAssembly Cookbook vol.2 技術書典16 技術書典17
最新のWasm事情 2024.10.18 N5T#13