"Don't be a lonely operator!" nilの性質を探る旅 #RubyKaigi #RubyKaigiB

A Nil Device, a Lonely Operator, & a Voyage to the Void Star @ericqweinstein "This talk, framed as an illustrated story around Ruby 2.3's new "lonely operator" (`&.`) for safely handling `nil`, explores the nature of nothingness: what it is, how other programming languages think about it, and how we should treat it in our Ruby codebases (including why—and whether—we need it)."
0
Eric Weinstein (エリック) @ericqweinstein

Senior Director, Engineering @ZipRecruiter, ML tinkerer, poet, conjurer of cheap tricks, author of Ruby Wizardry (@NoStarch). https://t.co/h4IxIZ3z4S #blacklivesmatter

https://t.co/9dnfMqMD51


黒曜@Leaner Technologies @kokuyouwind

お昼休み明け最初のセッション、A Nil Device, a Lonely Operator, & a Voyage to the Void Star #rubykaigi #rubykaigiB

2016-09-09 13:31:45
黒曜@Leaner Technologies @kokuyouwind

agenda. Nilとは何かから初めて、&.の話、そしてvoid starの歴史の話 #rubykaigi #rubykaigiB

2016-09-09 13:36:10
黒曜@Leaner Technologies @kokuyouwind

「Nilとは何か? (真っ白なページ) 以上! 質問は?」確かにNilだけどw #rubykaigi #rubykaigiB

2016-09-09 13:36:59
Yuki Yugui Sonoda @yugui

nil is the default implementation of Null Object in Ruby, which is good enough to to_s. I hope getting some more insights #rubykaigiB

2016-09-09 13:38:12
黒曜@Leaner Technologies @kokuyouwind

Nilは、CレベルだとSPECIAL_SINGLETONになっている。Valueは0x08 or 4。このため、Ruby1.9.3ではnil.object_idが4になっていた。 #rubykaigi #rubykaigiB

2016-09-09 13:39:00
黒曜@Leaner Technologies @kokuyouwind

Rubyレベルでは、nil.classはNilClass、nil.singleton_classもNilClass。instance_methods(false)はto_sなど幾つかのもの。 #rubykaigi #rubykaigiB

2016-09-09 13:40:43
黒曜@Leaner Technologies @kokuyouwind

nil as an API. Animal.findはAnimalかnilを返す。シュレディンガーの猫のように、箱を開けるまでは中身があるのか空なのか(a value or nil)わからない #rubykaigi #rubykaigiB

2016-09-09 13:42:30
黒曜@Leaner Technologies @kokuyouwind

nilが何を意味するか。値ではない、意味のある値ではない、など。 #rubykaigi #rubykaigiB

2016-09-09 13:43:11
黒曜@Leaner Technologies @kokuyouwind

ぼっち演算子(正式訳なのかなこれ…)の話。ハッシュから存在しないキーを取ろうとした時や未定義のインスタンス変数を見た時、'FOO'.update!のように何もしなかったときなどにnilが変える。 #rubykaigi #rubykaigiB

2016-09-09 13:45:16
黒曜@Leaner Technologies @kokuyouwind

Ruby on Railsのnとilだけ赤文字になってnilになってるw #rubykaigi #rubykaigiB

2016-09-09 13:45:33
馬美肉 @chiastolite

File.size? 、ファイルない場合nil返ってくるのか。これは意外だった #rubykaigib

2016-09-09 13:45:42
黒曜@Leaner Technologies @kokuyouwind

共通のテーマとして、I/Oとmutationはnilを導出することがある #rubykaigi #rubykaigiB

2016-09-09 13:46:09
m1sogi webエンジニア @m1sogi

#rubykaigi #rubykaigib upcase! の戻り値、なにもしないときだけ nil なんだな

2016-09-09 13:46:13
hamada @akira_simpson

The "lonely" or "safe" navigation operator: &. #rubykaigi #rubykaigiB

2016-09-09 13:47:21