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
callccの実装を読む
Search
Masayuki Mizuno
February 06, 2025
0
150
callccの実装を読む
Masayuki Mizuno
February 06, 2025
Tweet
Share
More Decks by Masayuki Mizuno
See All by Masayuki Mizuno
Omotesando.rb #110
fetburner
0
110
Continuation is to be continued
fetburner
1
1.2k
RubyでSlackのbotを作ろう
fetburner
0
150
継続オペレータの話
fetburner
0
220
Rubyでリストモナドを使う
fetburner
0
170
次世代のプロファイラVernierを試す
fetburner
0
120
数値計算とメモリ最適化
fetburner
0
230
3/14なので円周率を計算する
fetburner
0
390
ネットワーク機器の中の OCaml
fetburner
1
720
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
524
40k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
RailsConf 2023
tenderlove
30
1.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
800
The Language of Interfaces
destraynor
158
25k
Transcript
©2025 Wantedly, Inc. callccͷ࣮ΛಡΉ RubyͷܧଓΦϖϨʔλ࣮ͷத Omotesando.rb #106 Feb 6, 2025
- Masayuki Mizuno
©2025 Wantedly, Inc. ࣗݾհ
©2025 Wantedly, Inc. ࣗݾհ ਫխ೭ ࣗݾհ ॴଐ: ΥϯςουϦʔגࣜձࣾ ৬ۀ: όοΫΤϯυΤϯδχΞ
͖ͳݴޠ: OCaml, Coq, NEC IXͷίϯϑΟά Twitter: @fetburner mixi2: @lgtm GitHub: https://github.com/fetburner
©2025 Wantedly, Inc. ࠓ͢͜ͱ
©2025 Wantedly, Inc. ࠓ͢͜ͱ Ϟνϕʔγϣϯ 3VCZʹ࣮͞Ε͍ͯΔܧଓΦϖϨʔλͱʁ w DBMMDDͷհ
w 'JCFSͱͷҧ͍ 3VCZͷܧଓΦϖϨʔλ࣮ͷத
©2025 Wantedly, Inc. Ϟνϕʔγϣϯ
©2025 Wantedly, Inc. ܧଓΦϖϨʔλ࣮ͷϘτϧωοΫ͕Γ͍ͨ ϝλϓϩΛͬͨ%4-࣮ͰඵͰࡁΜͩܭࢉ͕ɺDBMMDDΛ͏ͱେมॏ͘ͳͬͯ͠·ͬͨ Ϟνϕʔγϣϯ ΑΓৄࡉͳܦҢIUUQTXXXXBOUFEMZDPNDPNQBOJFTXBOUFEMZQPTU@BSUJDMFT
©2025 Wantedly, Inc. ϒϩοΫΛ໌ࣔͤͣॲཧΛΓग़ͤΔͷ͕ັྗత %4-Λ࡞Δ࣌ʹ͞Δ߹͕͋Δ ͦΕͰܧଓΦϖϨʔλΛ͍͍ͨཧ༝ ͜͜Ͱྫʹग़ͨ͠%4-ͷৄࡉIUUQTXXXXBOUFEMZDPNDPNQBOJFTXBOUFEMZQPTU@BSUJDMFT
©2025 Wantedly, Inc. 3VCZʹ࣮͞Ε͍ͯΔܧଓΦϖϨʔλͱʁ
©2025 Wantedly, Inc. Rubyʹ࣮͞Ε͍ͯΔܧଓΦϖϨʔλ: callcc ܧଓʢͦΕҎ߱ͷܭࢉʣΛશͯΓग़ͯ͠ଋറ͢Δ callcc͕setjmpͰɺContinuation#call͕longjmpతͳΠϝʔδ IUUQTEPDTSVCZMBOHPSHKBMBUFTUDMBTT$POUJOVBUJPOIUNMΑΓ
©2025 Wantedly, Inc. Fiberͱͷҧ͍ ܧଓԿͰݺͼग़ͤΔ ҰํɺFiberҰऴྃ͢Δͱ࠶ར༻Ͱ͖ͳ͍
©2025 Wantedly, Inc. ܧଓΦϖϨʔλͷ࣮ͷத
©2025 Wantedly, Inc. ֦ுϥΠϒϥϦͱ࣮ͯ͠͞Ε͍ͯΔ ඪ४ఴϥΠϒϥϦͳͷͰιʔείʔυ3VCZॲཧܥʹಉࠝ ܧଓΦϖϨʔλͷ࣮ IUUQTHJUIVCDPNSVCZSVCZCMPCSVCZ@@FYUDPOUJOVBUJPODPOUJOVBUJPODΑΓ
©2025 Wantedly, Inc. ࣮ͷຊମDPOUDʹډΔ ඪ४ఴϥΠϒϥϦͳͷͰιʔείʔυ3VCZॲཧܥʹಉࠝ ܧଓΦϖϨʔλͷ࣮ IUUQTHJUIVCDPNSVCZSVCZCMPCSVCZ@@DPOUDΑΓ
©2025 Wantedly, Inc. ελοΫΛୀආͯ͠TFUKNQ͍ͯ͠Δ 3VCZ7.ελοΫϚγϯͳͷͰɺελοΫΛୀආ͢ΔͱมͷΛهͰ͖Δ DBMMDDͷ࣮ IUUQTHJUIVCDPNSVCZSVCZCMPCSVCZ@@DPOUDΑΓ
©2025 Wantedly, Inc. ελοΫใࠩͷΈه͍ͯ͠ճ͍ͯ͠Δ ଞͷDBMMDDݺͼग़͠Ͱୀආͨ͠ελοΫใ͕͋ΕɺͦΕΛ͍ճ͢ DBMMDDͷ্࣮ͷ IUUQTHJUIVCDPNSVCZSVCZCMPCSVCZ@@DPOUDΑΓ
©2025 Wantedly, Inc. ελοΫใΛ෮ݩͯ͠MPOHKNQ͍ͯ͠Δ $POUJOVBUJPODBMMͷ࣮ IUUQTHJUIVCDPNSVCZSVCZCMPCSVCZ@@DPOUDΑΓ
©2025 Wantedly, Inc. ·ͱΊ
©2025 Wantedly, Inc. ·ͱΊ 'JCFSDBMMDDΛશʹସ͠ͳ͍ w %4-ͷจ຺ͰɺΓग़ͨ͠ίʔυΛෳճݺͼग़͍ͨ͠߹͕͋Δ DBMMDDͷຊ࣭ɺ7.ͷঢ়ଶͷୀආͱ෮ݩ
w ελοΫͷใͱɺݱࡏ࣮ߦ͍ͯ͠ΔίʔυͷҐஔΛঢ়ଶͱͯ͠ୀආ͢Δ w ΞʔΩςΫνϟຖͷࠩҟ͕େ͖ͯͭ͘Βͦ͏ ελοΫใΛશͯୀආ͢Δͱॏ͍ͷͰࠩͰ࣋ͭ