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
仮想マシンにおけるスタックの管理
Search
monochrome
July 11, 2021
Programming
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
仮想マシンにおけるスタックの管理
言語処理系Slackミートアップ#4(2021/07/11)
monochrome
July 11, 2021
More Decks by monochrome
See All by monochrome
RubyKaigi2026: Invariants in my own Ruby
sisshiki1969
0
15
Improving my own Ruby thereafter
sisshiki1969
1
250
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
1k
Improve my own Ruby
sisshiki1969
1
580
My own Ruby, thereafter
sisshiki1969
0
410
Running Optcarrot (faster) on my own Ruby.
sisshiki1969
1
320
Rustでゴミ集め
sisshiki1969
1
380
RustでつくるRubyのFiber
sisshiki1969
0
320
Shinjuku.rs#15 Rustでつくるx86アセンブラ
sisshiki1969
0
1.8k
Other Decks in Programming
See All in Programming
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
11
2k
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
140
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
220
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
14
6.6k
継続モナドとリアクティブプログラミング
yukikurage
3
300
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
990
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.6k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
330
Contextとはなにか
chiroruxx
1
390
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
160
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
260
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
270
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Code Review Best Practice
trishagee
74
20k
We Have a Design System, Now What?
morganepeng
55
8.2k
How to make the Groovebox
asonas
2
2.3k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Agile that works and the tools we love
rasmusluckow
331
22k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
380
The Curious Case for Waylosing
cassininazir
1
420
Navigating Weather and Climate Data
rabernat
0
270
Transcript
プログラミング言語Slack 定期ミートアップ 2021/07/11 仮想マシンにおけるスタック・ヒープのハンドリング monochrome ruruby: https://github.com/sisshiki1969/ruruby
def g end def f g() end f() toplevel Virtual
Context stack
def g end def f g() end f() toplevel f
Virtual Context stack
def g end def f g() end f() toplevel f
g Virtual Context stack
def g end def f g() end f() toplevel f
Virtual Context stack
def g end def f g() end f() toplevel Virtual
Context stack
t = 100 3.times do b1 = 0 end toplevel
block Virtual Context stack b1 t
def f f1 = 5 Proc.new do b1 = 1
g() end end p = f() p.call() toplevel f Virtual Context stack f1
def f f1 = 5 Proc.new do b1 = 1
g() end end p = f() p.call() toplevel f Virtual Context stack f1 block b1 Heap space
def f f1 = 5 Proc.new do b1 = 1
g() end end p = f() p.call() toplevel f Virtual Context stack block b1 Heap space f’ f1
def f f1 = 5 Proc.new do b1 = 1
g() end end p = f() p.call() toplevel Virtual Context stack block b1 Heap space f’ f1 p
def f f1 = 5 Proc.new do b1 = 1
g() end end p = f() p.call() toplevel Virtual Context stack block b1 Heap space f’ f1 p
def f f1 = 5 Proc.new do b1 = 1
g() end end p = f() p.call() toplevel Virtual Context stack block b1 Heap space f’ f1 p g
def f f1 = 5 Proc.new do b1 = 1
g() end end p = f() p.call() toplevel Virtual Context stack block b1 Heap space f’ f1 p