2017/09/27 15:49:14
htomine
これは面白そうな記事が
2017/09/27 15:59:44
HolyGrail
おもしろい
2017/09/27 16:01:03
gfx
これを読むと、 nilが真である世界線 はありえたし、そのほうがいくらかシンプルだったなあという気はする。
2017/09/27 16:03:36
mattn
しょっぱな出鼻を挫くここ好き > K:「この二つはboolean型の定数ですよね」S:「いえ、違います」
2017/09/27 16:12:33
kasei_san
おもしろくてためになる
2017/09/27 16:13:56
iga_k
CとRubyってこんなに違うのだなぁ。もう忘れてしまっていたので新鮮だった!
2017/09/27 16:14:47
oooooo4150
いいふうふ
2017/09/27 16:15:24
kuronat
研究者の議論だ、とても心地よい
2017/09/27 16:21:10
KoshianX
良いご夫婦でいらっしゃる。ためになるお話でこれは元気なときに読み返しておきたい。
2017/09/27 16:34:29
kenzy_n
真偽問題
2017/09/27 16:52:57
rinotakabe
あえて「ファルス」と読む人(文化?)きらい
2017/09/27 16:59:40
call_me_nots
“printはなんでも引き取って文字列っぽく表示するすごい関数で、数値を引き取っても勝手に文字列にしてくれるからですね。本当に文字列しか表示しない関数は、実はない”
2017/09/27 18:06:19
field_combat
Rubyちゃんと書いたことなかったけど、こういう言語なのか。理解しないで書くとグチャグチャになりそう
2017/09/27 19:49:41
petitbang
面白い
2017/09/27 20:00:32
Snail
素晴らしい!! 分かっていても深くロジカルに考えることが少ないから、こういう良記事は好き(^o^)
2017/09/27 20:10:17
yujiorama
Ruby で満たされている空間
2017/09/27 20:14:01
sunayuki
書いてもいいし、書かなくてもいい。というのはわかる。書かなくてもいいから書けないというのは、僕は好かない
2017/09/27 20:49:39
n314
なんか無駄に複雑に説明して謎を解明しないまま進んでムズムズする。bool型があれば、bool型にキャストで済む話がほとんどなような…。最後のwanted_car = Car.newも静的型の発想で、そういうときこそnilじゃないのかなあ。
2017/09/27 20:54:03
suginoy
卜部さんの声で脳内再生される。
2017/09/27 21:11:50
mumumu-tan
『真』であることとtrueが違う、『偽』とfalseについても同様、という話が個人的に一番衝撃的だったかもしれません。
2017/09/27 21:13:54
uunfo
すごくふんわりとプログラミングやってそう
2017/09/27 21:38:46
ksugimori
会話形式だと数学ガール的な分かりやすさがある。
2017/09/27 21:39:20
ngsw
よい記事 ("wanted_car = prius" みたいなおねだりの仕方もあるなとか思ってしまった)
2017/09/27 21:49:05
nice_and_easy
Rubyはなんでもかんでも全部オブジェクトっていうのを覚えておいたせいか理解しやすいかった
2017/09/27 21:49:34
keim_at_Si
Rubyのクラスの話は、いちいち筋を通してる感じがすごく好きで、あのやくみつるっぽい人凄いなーって思う。ただ、nil?がちゃんとあるんだから、if文にnil突っ込んだらエラーでも良かったのでは?と思う事はよくある。
2017/09/27 21:52:35
takehikom
「定数true」と「真となる値」の区別については昔書いた d.hatena.ne.jp /a=[nil]は「空室がある」、a=[]は「部屋がない」
2017/09/27 22:12:45
peketamin
“ゼロを真にした話”
2017/09/27 22:24:20
K2ICE
“K:まず、trueがtrueに、falseがfalseになる理由について訊きたいと思います。 この二つはboolean型の定数ですよね? S:いえ、違います。”
2017/09/27 22:37:14
turanukimaru
nil、つまり無いものを有るとして扱うのは偽であるとしたのはアリストテレスなのでnilが真の世界線は2500年前に分岐。また、存在は決定ではなく言及したときから存在するともしたのでwanted_car = nilはいけないのだ
2017/09/27 22:51:46
megumin1
記事の内容をひとことでまとめると「falseとnilだけが偽、そのほかは真」です。
2017/09/27 22:59:16
rryu
Rubyは暗黙の型変換をしない言語だけど、ifだけは色々忖度してくれるのでややこしくなる。
2017/09/27 23:06:58
srtk86
わかりやすい
2017/09/27 23:09:52
ihag
哲学や。めちゃいい。こういうのもっと読みたい。
2017/09/27 23:14:29
garage-kid
194
2017/09/27 23:24:37
LiosK
これって、いわゆる一般的なbool型と型キャストの挙動を、Rubyの「世界観」に合うように説明を組み立ててるだけじゃないの? プログラム言語の仕様定義とかでそういうの結構見かけるぞ。
2017/09/27 23:40:42
mergyi
どちらかと言うと型を書くのが流行ってる気がした
2017/09/27 23:50:27
delphinus35
夫婦でホッテントリとは珍しい
2017/09/27 23:53:57
stealthinu
これは理解が深まった。自分も宣言しないだけでBoolean型にあたるものがあるのだと思ってた。
2017/09/27 23:59:51
Watson
“Rubyコミッタである卜部昌平に、その妻である私、卜部一恵がRubyのtrueとfalseについて突っ込んで聞いてみた話”
2017/09/28 00:02:04
koyancya
これ読んでて NilClass を継承したクラスのインスタンスは偽なのかどうか気になったけど、継承するまでは良いけどインスタンスを現世に呼ぶ方法が分からなかった
2017/09/28 00:16:45
Youchan
“私は昌平と同じ大学同じ研究室に所属していたのでプログラミングについての基礎は一応ありますが、エンジニアとして職を得たことはありません。つまり、プログラミング初級者です。” ん?それは初心者と呼んでいい
2017/09/28 00:22:10
progrhyme
卜部夫妻の対話形式になっている。Qiitaってすごいな
2017/09/28 00:32:00
kiichi55
Rubyのtrueとfalse,nilの話は、メタプログラミングをした時、気づいて、ビックリしたな。
2017/09/28 01:11:03
tohokuaiki
1/3くらい読んで疲れた。寝る。
2017/09/28 01:55:54
tsz
「動的変数」が気になって話が入ってこないw
2017/09/28 02:48:24
motchang
ポッドキャストで聴きたい
2017/09/28 05:19:21
NetPenguin
Boolean型がないのか…… あと、nil==falseが真にならないのは、まあたしかにnilはfalseと同じではないので(同じなのだったらnilというものは不要だしね)おかしくはないけど、真偽値型への暗黙の変換が発生しないのだなと。
2017/09/28 07:58:37
agricola
なんでも文字列にしてくれるすごい関数とか、だいぶんアレなことを言うてる気もする。クラスがみんなインスタンスに対応する文字列を返すメソッドを持ってるから、じゃないの?
2017/09/28 08:25:28
hisasann
ひじょうに勉強になりました
2017/09/28 08:38:38
u5_h
配列、ハッシュは中身に関わらずthen側、nilはelse側、変数は中身がnilならelse側を通るという話。家庭でこんな話題を振られると普通メンタル休まらなそうなもんだけど。
2017/09/28 10:03:30
kitaj
「falseとnilだけが偽」と覚えとけば困らない。
2017/09/28 11:19:15
YaSuYuKi
pはinspectを、putsやprintはto_sを内部で呼ぶので、それらを持たないBasicObjectのインスタンスを渡すとNoMethodErrorで落ちる
2017/09/28 11:46:58
tmtms
Rubyに慣れすぎてて、この筆者が何を疑問に思ってるのかがさっぱりわからない。
2017/09/29 10:04:43
Dai_Kamijo
しょっぱな出鼻を挫くここ好き > K:「この二つはboolean型の定数ですよね」S:「いえ、違います」 / “Rubyのtrueとfalseの話 - Qiita” — mattn (@mattn_jp) September 27, 2017 from Twitter twitter.com September 29, 2017 at 09:59AM via IFTTT
2017/10/02 14:47:38
mas-higa
"これらは結構ややこしいなぁ" C言語脳からしたら前々ややこしくないし、逆に変数に型があるはずという思い込みから、ややこしくなってるだけに思える。"変数の中身のnil" とか。