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
fukuoka.rb#202 RustでつくるRuby
Search
monochrome
March 24, 2021
Programming
880
1
Share
fukuoka.rb#202 RustでつくるRuby
monochrome
March 24, 2021
More Decks by monochrome
See All by monochrome
Improving my own Ruby thereafter
sisshiki1969
1
230
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
1k
Improve my own Ruby
sisshiki1969
1
540
My own Ruby, thereafter
sisshiki1969
0
390
Running Optcarrot (faster) on my own Ruby.
sisshiki1969
1
300
仮想マシンにおけるスタックの管理
sisshiki1969
0
230
Rustでゴミ集め
sisshiki1969
1
370
RustでつくるRubyのFiber
sisshiki1969
0
320
Shinjuku.rs#15 Rustでつくるx86アセンブラ
sisshiki1969
0
1.7k
Other Decks in Programming
See All in Programming
Back to the roots of date
jinroq
0
730
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
1.1k
PHPer、Cloudflare に引っ越す
suguruooki
1
140
2026-04-15 Spring IO - I Can See Clearly Now
jonatan_ivanov
1
190
ついに来た!本格的なマルチクラウド時代の Google Cloud
maroon1st
0
390
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
1.2k
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
1.6k
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
1
200
tRPCの概要と少しだけパフォーマンス
misoton665
2
260
GoogleCloudとterraform完全に理解した
terisuke
1
190
PHPでローカル環境用のSSL/TLS証明書を発行することはできるのか? #phpconkagawa
akase244
0
350
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
1.5k
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3k
Become a Pro
speakerdeck
PRO
31
5.9k
Fireside Chat
paigeccino
42
3.9k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
400
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
220
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
190
New Earth Scene 8
popppiees
3
2.2k
Claude Code のすすめ
schroneko
67
220k
The agentic SEO stack - context over prompts
schlessera
0
770
Transcript
RustでつくるRuby処理系 monochrome twitter: @s_isshiki1969 GitHub: https://github.com/sisshiki1969 Slack: プログラミング言語処理系が好きな人の集まり https://prog-lang-sys-ja-slack.github.io/wiki/
ruruby (https://github.com/sisshiki1969/ruruby) • Rust製のRuby実装 • 仮想マシンインタプリタ • 他の既存実装・仮想マシンへの依存なし • 3万行ぐらい
モチベーション 1. Rustの勉強がしたい 2. 何か言語処理系を作りたい 3. Ruby面白そう
benchmark
開発のモチベーションをいかに維持するか 1. おもちゃじゃないプログラムを動かしたい 2. 「正しく動いている」ことがわかるもの 3. 実行速度を測定できるもの 4. 極力外部ライブラリに依存しないもの
Optcarrot • Rubyで書かれたファミコンのエミュレータ • 「Ruby3x3」のための準公式ベンチマーク • ベンチマーク用の速度測定モードがある • 生成した画像の正しさをチェックサムで検証できる •
(ベンチマークモードでは)外部ライブラリを使用しない
optcarrot benchmark
None
技術的に難しかった点 • ガベージコレクタ →自作した。 • Fiber →アセンブリで実装 (x86-64/linux, aarch64/MacOS)
言語処理系自作は • モチベーションを維持する工夫が大切 • 対象言語の実行モデルの勉強になる • 楽しいので、みんなで作ろう Slack: プログラミング言語処理系が好きな人の集まり https://prog-lang-sys-ja-slack.github.io/wiki/