Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Ruby_through_Reserved_Words.pdf
Yukihiro Matsumoto
July 02, 2019
Programming
0
73
Ruby_through_Reserved_Words.pdf
Yukihiro Matsumoto
July 02, 2019
Tweet
Share
More Decks by Yukihiro Matsumoto
See All by Yukihiro Matsumoto
matz
1
570
matz
0
340
matz
8
3k
matz
8
1.2k
matz
11
120k
Other Decks in Programming
See All in Programming
madai0517
1
170
grapecity_dev
0
200
mihyaeru21
0
360
mploed
3
160
oleindesign
1
200
legalforce
PRO
0
610
prof18
0
640
watilde
4
1.1k
gernotstarke
0
380
keiichihirobe
1
110
manfredsteyer
PRO
0
240
meemeelab
0
280
Featured
See All Featured
mza
80
4.1k
imathis
479
150k
jrom
116
7.2k
keithpitt
401
20k
searls
205
36k
samanthasiow
56
6.4k
jmmastey
10
610
maltzj
501
36k
myddelton
109
11k
bryan
31
3.4k
zenorocha
296
40k
jponch
103
5k
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