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
410
mruby VM
matz
0
74
Contribute to Ruby (RubyKaigi 2022)
matz
0
220
Ruby after 25 years
matz
1
1.2k
What is software made of?
matz
0
640
Streem
matz
8
3.7k
world-of-languages.pdf
matz
8
1.3k
Ruby Everywhere
matz
11
120k
Other Decks in Programming
See All in Programming
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
210
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
FormFlow - Build Stunning Multistep Forms
yceruto
1
190
カクヨムAndroidアプリのリブート
numeroanddev
0
430
AIネイティブなプロダクトをGolangで挑む取り組み
nmatsumoto4
0
120
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
130
Claude Codeの使い方
ttnyt8701
1
130
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
0
190
GraphRAGの仕組みまるわかり
tosuri13
7
450
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
400
Go Modules: From Basics to Beyond / Go Modulesの基本とその先へ
kuro_kurorrr
0
120
Featured
See All Featured
Balancing Empowerment & Direction
lara
1
340
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Become a Pro
speakerdeck
PRO
28
5.4k
Navigating Team Friction
lara
187
15k
Agile that works and the tools we love
rasmusluckow
329
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
GitHub's CSS Performance
jonrohan
1031
460k
Being A Developer After 40
akosma
90
590k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
Into the Great Unknown - MozCon
thekraken
39
1.9k
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