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 Trivia
Search
Erik Berlin
October 01, 2015
Programming
2
1.1k
Ruby Trivia
Presented at the Berlin Ruby User Group (RUG::B) on October 1, 2015.
Erik Berlin
October 01, 2015
Tweet
Share
More Decks by Erik Berlin
See All by Erik Berlin
Enumerator::Lazy
sferik
1
390
Ruby Trivia 3
sferik
0
560
The Value of Being Lazy
sferik
3
590
Ruby Trivia 2
sferik
0
620
💀 Symbols
sferik
5
1.6k
Content Negotiation for REST APIs
sferik
8
830
Writing Fast Ruby
sferik
622
60k
Mutation Testing with Mutant
sferik
5
1k
Other Decks in Programming
See All in Programming
Komplexe Oberflächen mit SVG und der Web Animation API
joergneumann
0
690
Try creating your own orderedmap
kazamori
1
280
Goのエラースタックトレースの歴史と今後
sonatard
10
2.1k
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
1
1.4k
ペパボOpenTelemetry革命
pyama86
2
210
2 週間で Twitter Bot を作ってみた
contour_gara
0
830
Node.js v22 で変わること
yosuke_furukawa
PRO
12
4.1k
Powerfully Typed TypeScript
euxn23
3
790
TypeScriptとGraphQLで実現する 型安全なAPI実装 / TSKaigi 2024
hokaccha
5
2.3k
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
170
Effectで作る堅牢でスケーラブルなAPIゲートウェイ / Robust and Scalable API Gateway Built on Effect
yasaichi
7
1.1k
Webアプリをできるだけコードを手書きしないで作ってみる
tomokusaba
2
230
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1357
200k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
15
1.6k
Designing for humans not robots
tammielis
247
25k
Building Applications with DynamoDB
mza
88
5.7k
Designing Experiences People Love
moore
136
23k
Facilitating Awesome Meetings
lara
43
5.6k
GraphQLとの向き合い方2022年版
quramy
33
12k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Ruby is Unlike a Banana
tanoku
96
10k
Scaling GitHub
holman
457
140k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
67
14k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Transcript
Ruby Trivia
In Ruby, a dash may not be used in a
variable name… …but before Ruby 2.1, one variable was allowed to be named with a dash. What was it called? Question 1:
In Ruby, a dash may not be used in a
variable name… …but before Ruby 2.1, one variable was allowed to be named with a dash. What was it called? Hint: It’s a global variable. Question 1:
$- Answer 1:
Why can’t variable names contain dashes? Bonus Question:
Why can’t variable names contain dashes? Bonus Question: Answer: Because
the Ruby parser can’t distinguish it from the minus (-) operator between two variables (e.g. forty-two).
Ruby may define a special File object in the first
file it interprets. What is it called? What does it do? Question 2:
Ruby may define a special File object in the first
file it interprets. What is it called? Question 2: Hint: When you call read, it reads the file, starting after __END__
DATA Answer 2:
What happens if you call: DATA.rewind before DATA.read Bonus Question:
What happens if you call: DATA.rewind before DATA.read Bonus Question:
Answer: It reads the entire file, including the source code.
The following line of code is valid Ruby syntax: a
= true && return But this line of code is not: a = return && true What is the error message? Question 3:
void value expression Answer 3:
When you convert the range: (1..3).to_a You get the array:
[1, 2, 3] What is the result of: (3..1).to_a Question 4:
[] Answer 4:
What method would need to be added to the Range
interface to make descending sequences possible? Bonus Question:
What method would need to be added to the Range
interface to make descending sequences possible? Bonus Question: Answer: pred (the opposite of succ).
What Ruby class mixes-in Comparable but doesn’t define the spaceship
(<=>) operator? Question 5:
What Ruby class mixes-in Comparable but doesn’t define the spaceship
(<=>) operator? Hint: It’s a descendant of Numeric. Question 5:
Complex Answer 5:
Thanks for playing! Follow @sferik on Twitter for more Ruby
trivia and practica.