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
最新のWasm事情
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
530
2025年ふりかえり
askua
1
230
ライブラリを公開してメンテナンスした一年
askua
0
95
Wasmの気になる最新情報
askua
1
380
Wasmのエコシステムを使った ツール作成方法
askua
0
390
Pure Goで体験するWasmの未来
askua
1
1k
Wasmで社内ツールを作って配布しよう
askua
0
310
Wasm元年
askua
0
370
wstdなんだか良さそう
askua
0
140
Other Decks in Technology
See All in Technology
Claude Code の Sandbox 機能を Anthropic Sandbox Runtime(srt) で試そう!/lets-play-anthropic-sandbox-runtime
tomoki10
1
570
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
930
2026TECHFRESH畢業分享會 - AI 時代的人生存檔點
line_developers_tw
PRO
0
940
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
5
1.9k
非定型業務をAI slackbotで自動化する ~ 社内要望を自動壁打ちするbotを作った ~/automating-ad-hoc-work-with-ai-slackbot
shibayu36
0
640
Building applications in the Gemini API family.
line_developers_tw
PRO
0
3.2k
Snowflakeと仲良くなる第一歩
coco_se
4
440
【NRUG vol.18】なぜ多くのオブザーバビリティ導入は失敗するのか
nrug_member
0
120
連合学習と機密コンピューティング
lycorptech_jp
PRO
0
110
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
510
中期計画、2回作ってみた ~業務委託と正社員、両方の視点から~
demaecan
1
730
LLMにもCAP定理があるという話
harukasakihara
0
330
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
220
For a Future-Friendly Web
brad_frost
183
10k
Designing Powerful Visuals for Engaging Learning
tmiket
1
410
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
200
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.4k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
380
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
220
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Building Applications with DynamoDB
mza
96
7.1k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
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