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
build-debugger-in-rust.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
skanehira
January 20, 2025
290
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
build-debugger-in-rust.pdf
skanehira
January 20, 2025
More Decks by skanehira
See All by skanehira
Reactにおける 良いコンポーネントテストとはなにか
skanehira
1
450
vimconf2025.pdf
skanehira
0
53
findy-ai-terminal.pdf
skanehira
2
520
Rustから学ぶ 非同期処理の仕組み
skanehira
1
480
about_gorilla.vim.pdf
skanehira
0
160
if let temporary scopeについて
skanehira
0
210
Findy感謝祭2024 LT
skanehira
0
170
Rustではじめる負荷試験
skanehira
6
2.6k
Wellcome Vim World
skanehira
3
690
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
340
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
New Earth Scene 8
popppiees
4
2.7k
Paper Plane (Part 1)
katiecoart
PRO
2
12k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
290
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Abbi's Birthday
coloredviolet
4
11k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Transcript
3VTUͰσόοΨʔΛ࣮ͯ͠Έͨ
自己紹介 ゴリラです。 株式会社テックリードという会社をやってい ます。 主にフロントエンド・バックエンドエンジニ アとして仕事しています。 好きなものはVim, Go, Rust, TypeScript,
Deno, Wasm などです。 X : https://x.com/gorilla0513 zenn : https://zenn.dev/skanehira GitHub: https://github.com/skanehira
RustでWasm Runtimeを実装する本を書いた https://zenn.dev/skanehira/books/writing-wasm-runtime-in-rust
自己紹介はこれくらいで…
本日は↓をRustでやってみた という話をします
https://github.com/skanehira/ build-debugger-in-rust
ҙ w ຊͷ༰Λ࣮͍ͯͯ͢͠ͳ͍ w ΫϨʔτ͕ͳࣗ͘લ࣮͢Δ͔͠ͳ͍෦͍ͬͯͳ͍ʢ໘ͳͷͰʜ w ྫγϯϘϧ໊ɺϑΝΠϧ໊ ߦࢦఆͰϒϨΠΫϙΠϯτΛઃఆ͢Δ w CSFBLQPJOUͱDPOUJOVF͕ಈ͘࠷ݶͷ࣮ͷΈ
ओʹͬͨΫϨʔτ w IUUQTDSBUFTJPDSBUFTOJY w ͞·͟·ͳ OJYϓϥοτϑΥʔϜ"1* -JOVYɺ%BSXJOͳͲ Λఏڙ w GPSL
QUSBDFͳͲ w IUUQTDSBUFTJPDSBUFTBEESMJOF w %8"3'σόοάใΛ࣋ͭϑΝΠϧ͔ΒΞυϨε͝ͱͷσόοάใΛऔಘ͢ ΔͨΊͷΫϩεϓϥοτϑΥʔϜϥΠϒϥϦ w ΞυϨεʹؔ࿈͢ΔϑΝΠϧ໊ɺߦ൪߸ɺ໊ؔΛऔಘ
σϞ
σόοΨʔͷ࣮dલ४උd w σόοάରͷϓϩάϥϜʢҎ߱EFCVHHFFʣΛσόοάϏϧυ w ͜ΕʹΑΓ࣮ߦόΠφϦˣͷΑ͏ʹͳΔ w %8"3'ͷใ͕Ճ͞ΕΔʢσϑΥϧτʣ w ΠϯϥΠϯԽͱ࠷దԽΛແޮʢσόοάΛ༰қʹ͢ΔͨΊʣ
σόοΨʔͷ࣮d࣮ߦ։࢝d w EFHVHHFSͰGPSLͯ͠ࢠϓϩηε Λ࡞Δ w ϓϩηεͰXBJUQJE Ͱࢠϓϩ ηεͷঢ়ଶมԽΛͭ
w ࢠϓϩηεͰQUSBDF Λ࣮ߦ w 153"$&@53"$&.&ʹΑΓϓ ϩηε͕ࢠϓϩηεΛ੍ޚͰ͖Δ Α͏ʹͳΔ w ࢠϓϩηεͰFYFDWF
Ͱ EFCVHHFFΛ࣮ߦ w ࢠϓϩηεҰ࣌ఀࢭ͢Δ w ϓϩηεͷXBJUQJE Ͱ 4*(53"1Λݕͯ͠ॲཧ͕ਐΉ σόοΨʔͷ࣮d࣮ߦ։࢝d
σόοΨʔͷ࣮d࣮ߦ։࢝d
w CSFBLQPJOUͱDPOUJOVFίϚϯυͷ࣮ σόοΨʔͷ࣮dίϚϯυೖྗd
w ࢦఆΞυϨεͷ໋ྩͷઌ಄όΠτͷ໋ྩΛ*/5 Y$$ ʹॻ͖͑Δ w QUSBDFDPOU ͰEFCVHHFFͷॲཧΛ࠶։ w $16͕*/5Λॲཧ͢ΔͱEFCVHHFF͕4*(53"1Λड৴ͯ͠Ұ࣌ఀࢭ
w EFVHHFS͕XBJUQJE ͰEFHVHHFFͷঢ়ଶ͕มΘͬͨ͜ͱΛݕ σόοΨʔͷ࣮dCSFBLQPJOUઃஔd
IUUQT[FOOEFWLTSOOCCPPLTCVJME@ZPVS@PXO@HP@EFCVHHFSWJFXFSCSFBLQPJOUNFNPSZ σόοΨʔͷ࣮dCSFBLQPJOUઃஔd
w QUSBDFSFBE ͰࢦఆΞυϨε͔ Β໋ྩʢόΠτʣΛऔಘ w EBUBY ff cYDDͰઌ಄όΠ τΛYDDʹมߋ
w QUSBDFXSJUFͰมߋ໋ͨ͠ྩΛॻ ͖͢ σόοΨʔͷ࣮dCSFBLQPJOUઃஔd
w EBUBY ff cYDDͰ͍ͬͯΔ͜ͱ σόοΨʔͷ࣮dCSFBLQPJOUઃஔd
w ΞυϨεͷ֬ೝ PCKEVNQMJOFOVNCFSTFYBNQMFTNBJOcMFTT σόοΨʔͷ࣮dCSFBLQPJOUઃஔd
σόοΨʔͷ࣮dDPOUJOVFd w QUSBDFDPOG Ͱఀࢭ͍ͯ͠Δ ࢠϓϩηεΛ࠶։ w TFMGXBJU Ͱࢠϓϩηεͷঢ়ଶม ߋΛͭ
w 4*(53"1Λݕͨ͠Β TFMGPO@CSFBLQPJOU@IJU Λ࣮ߦ
σόοΨʔͷ࣮dDPOUJOVFd w CSFBLQPJOUʹ౸ୡͨ͠ΒQD ΞυϨε ʹͳΔͷͰɺQDΛ ͭલʹͯ͠ɺͦͷΞυϨε͔Β ιʔείʔυͱߦΛग़ྗ͢Δ w TFMGMPDBUPSHFU@TPVSDF@MPDBUJP O
BEESMJOFͷ"1*
ײ w σόοΨʔͷಈ͘࠷ݶͷΈΛཧղͨ͠ w */5ͱQUSBDFͷ͜ͱগ͠Θ͔ͬͯΑ͔ͬͨ w ࠓޙϞνϕ͕͋Ε%8"3'ͷύʔαʔ࣮ͯ͠ຊͷଓ͖Λ͍͖͍ͬͯͨ