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
180
callccの実装を読む
Masayuki Mizuno
February 06, 2025
Tweet
Share
More Decks by Masayuki Mizuno
See All by Masayuki Mizuno
Omotesando.rb #110
fetburner
0
140
Continuation is to be continued
fetburner
1
1.5k
RubyでSlackのbotを作ろう
fetburner
0
160
継続オペレータの話
fetburner
0
230
Rubyでリストモナドを使う
fetburner
0
180
次世代のプロファイラVernierを試す
fetburner
0
120
数値計算とメモリ最適化
fetburner
0
240
3/14なので円周率を計算する
fetburner
0
410
ネットワーク機器の中の OCaml
fetburner
1
740
Featured
See All Featured
A Tale of Four Properties
chriscoyier
161
23k
Speed Design
sergeychernyshev
32
1.2k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
How STYLIGHT went responsive
nonsquared
100
5.9k
Building Adaptive Systems
keathley
44
2.8k
Building Applications with DynamoDB
mza
96
6.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Typedesign – Prime Four
hannesfritz
42
2.8k
Why Our Code Smells
bkeepers
PRO
340
57k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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 ΞʔΩςΫνϟຖͷࠩҟ͕େ͖ͯͭ͘Βͦ͏ ελοΫใΛશͯୀආ͢Δͱॏ͍ͷͰࠩͰ࣋ͭ