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
110
callccの実装を読む
Masayuki Mizuno
February 06, 2025
Tweet
Share
More Decks by Masayuki Mizuno
See All by Masayuki Mizuno
RubyでSlackのbotを作ろう
fetburner
0
120
継続オペレータの話
fetburner
0
170
Rubyでリストモナドを使う
fetburner
0
150
次世代のプロファイラVernierを試す
fetburner
0
100
数値計算とメモリ最適化
fetburner
0
210
3/14なので円周率を計算する
fetburner
0
370
ネットワーク機器の中の OCaml
fetburner
1
690
Gotanda.rb#56
fetburner
0
110
遅延評価を使ってOSSのバグを修正した話
fetburner
1
250
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
GitHub's CSS Performance
jonrohan
1030
460k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Git: the NoSQL Database
bkeepers
PRO
427
65k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Building Your Own Lightsaber
phodgson
104
6.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
The Invisible Side of Design
smashingmag
299
50k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
A Philosophy of Restraint
colly
203
16k
Adopting Sorbet at Scale
ufuk
74
9.2k
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 ΞʔΩςΫνϟຖͷࠩҟ͕େ͖ͯͭ͘Βͦ͏ ελοΫใΛશͯୀආ͢Δͱॏ͍ͷͰࠩͰ࣋ͭ