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
Ruby_through_Reserved_Words.pdf
Search
Yukihiro Matsumoto
July 02, 2019
Programming
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ruby_through_Reserved_Words.pdf
Yukihiro Matsumoto
July 02, 2019
More Decks by Yukihiro Matsumoto
See All by Yukihiro Matsumoto
30 Years of Ruby
matz
0
540
mruby VM
matz
0
120
Contribute to Ruby (RubyKaigi 2022)
matz
0
290
Ruby after 25 years
matz
1
1.5k
What is software made of?
matz
0
720
Streem
matz
8
3.8k
world-of-languages.pdf
matz
8
1.3k
Ruby Everywhere
matz
11
120k
Other Decks in Programming
See All in Programming
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
150
Android CLI
fornewid
0
220
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
300
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
160
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
760
今さら聞けない .NET CLI
htkym
0
200
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
220
AIを紡ぐPMのお話
swdtkuy
0
110
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
150
FDEが実現するAI駆動経営の現在地
gonta
2
290
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
680
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
180
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
170
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
280
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
210
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
480
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
250
Are puppies a ranking factor?
jonoalderson
1
3.8k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
66
57k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
490
Transcript
Powered by Rabbit 2.2.1 Ruby through Reserved Words Heroku Ruby
Association Yukihiro "Matz" Matsumoto まつもとゆきひろ @yukihiro_matz
Powered by Rabbit 2.2.1 Ruby has 41 reserved words
Powered by Rabbit 2.2.1 Each reflects (early) design decisions
Powered by Rabbit 2.2.1 The story behinds the words
Powered by Rabbit 2.2.1 begin/end
Powered by Rabbit 2.2.1 Comb Style Indentation
Powered by Rabbit 2.2.1 Inherited from Eiffel
Powered by Rabbit 2.2.1 along with rescue, ensure, retry
Powered by Rabbit 2.2.1 break/next/redo
Powered by Rabbit 2.2.1 not continue
Powered by Rabbit 2.2.1 From Perl (shorter)
Powered by Rabbit 2.2.1 class/def
Powered by Rabbit 2.2.1 From Python
Powered by Rabbit 2.2.1 module
Powered by Rabbit 2.2.1 Lisp (Flavors)
Powered by Rabbit 2.2.1 Mix-in
Powered by Rabbit 2.2.1 if/else/elsif
Powered by Rabbit 2.2.1 elsif
Powered by Rabbit 2.2.1 elseif, elif, elsif
Powered by Rabbit 2.2.1 The shortest pronounceable
Powered by Rabbit 2.2.1 then
Powered by Rabbit 2.2.1 The stop words
Powered by Rabbit 2.2.1 then and class methods
Powered by Rabbit 2.2.1 unless
Powered by Rabbit 2.2.1 From Perl
Powered by Rabbit 2.2.1 No elsif or elsunless
Powered by Rabbit 2.2.1 while
Powered by Rabbit 2.2.1 Simple loop
Powered by Rabbit 2.2.1 for/in
Powered by Rabbit 2.2.1 From Python?
Powered by Rabbit 2.2.1 until
Powered by Rabbit 2.2.1 From Perl
Powered by Rabbit 2.2.1 true/false/nil
Powered by Rabbit 2.2.1 Truthy and Falsy
Powered by Rabbit 2.2.1 Three value model
Powered by Rabbit 2.2.1 Inspired by Lisp
Powered by Rabbit 2.2.1 and/or/not
Powered by Rabbit 2.2.1 From Perl
Powered by Rabbit 2.2.1 Only for precedence
Powered by Rabbit 2.2.1 do/yield
Powered by Rabbit 2.2.1 The block
Powered by Rabbit 2.2.1 From CLU (1970s, MIT)
Powered by Rabbit 2.2.1 The biggest invention of Ruby
Powered by Rabbit 2.2.1 rescue/ensure/retry
Powered by Rabbit 2.2.1 Exception handling
Powered by Rabbit 2.2.1 Inspired by Eiffel
Powered by Rabbit 2.2.1 Icon (1970s, U of Arizona)
Powered by Rabbit 2.2.1 Success/Failure model
Powered by Rabbit 2.2.1 return
Powered by Rabbit 2.2.1 From C
Powered by Rabbit 2.2.1 Multiple values (Tuple)
Powered by Rabbit 2.2.1 self/super
Powered by Rabbit 2.2.1 Smalltalk
Powered by Rabbit 2.2.1 alias/undef
Powered by Rabbit 2.2.1 From Sather (1980s, UCB)
Powered by Rabbit 2.2.1 BEGIN/END
Powered by Rabbit 2.2.1 From Awk
Powered by Rabbit 2.2.1 Not recommendation anymore
Powered by Rabbit 2.2.1 __FILE__/__LINE__
Powered by Rabbit 2.2.1 From C (cpp)
Powered by Rabbit 2.2.1 __ENCODING__
Powered by Rabbit 2.2.1 From Ruby1.9 (encoding)
Powered by Rabbit 2.2.1 UCS vs CSI
Powered by Rabbit 2.2.1 Unicode
Powered by Rabbit 2.2.1 BDFL
Powered by Rabbit 2.2.1 Benevolent Dictator For Life
Powered by Rabbit 2.2.1 How to make decisions
Powered by Rabbit 2.2.1 Scope Background Motivation
Powered by Rabbit 2.2.1 Committee
Powered by Rabbit 2.2.1 Voting
Powered by Rabbit 2.2.1 A ship would climb a
mountain with many captains
Powered by Rabbit 2.2.1 too many cooks spoil the
broth