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
0
120
Ruby_through_Reserved_Words.pdf
Yukihiro Matsumoto
July 02, 2019
Tweet
Share
More Decks by Yukihiro Matsumoto
See All by Yukihiro Matsumoto
30 Years of Ruby
matz
0
310
mruby VM
matz
0
61
Contribute to Ruby (RubyKaigi 2022)
matz
0
180
Ruby after 25 years
matz
1
1k
What is software made of?
matz
0
590
Streem
matz
8
3.6k
world-of-languages.pdf
matz
8
1.3k
Ruby Everywhere
matz
11
120k
Other Decks in Programming
See All in Programming
Quine, Polyglot, 良いコード
qnighy
4
640
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
530
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.4k
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
430
CSC509 Lecture 09
javiergs
PRO
0
140
Amazon Qを使ってIaCを触ろう!
maruto
0
400
ヤプリ新卒SREの オンボーディング
masaki12
0
130
受け取る人から提供する人になるということ
little_rubyist
0
230
Ethereum_.pdf
nekomatu
0
460
EventSourcingの理想と現実
wenas
6
2.3k
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
The World Runs on Bad Software
bkeepers
PRO
65
11k
What's new in Ruby 2.0
geeforr
343
31k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Code Reviewing Like a Champion
maltzj
520
39k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Writing Fast Ruby
sferik
627
61k
Unsuck your backbone
ammeep
668
57k
Embracing the Ebb and Flow
colly
84
4.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