2018.06.07

休憩。といっても今日はほとんど仕事してないけど。ここんところの仕事の仕方は、集中力が降ってくるのをひたすら待つ感じだ。日記を書いたり音楽を聞いたりTwitterみたりしながら設計をA4用紙に落といると、ふと集中できるタイミングが降りてくるから、そのときにガツンと書く。

最近の通勤中はこれを読んでいた。Kindleで読むと結構厚い本も気楽にめくれるから最高だ。業務で書いていて違和感があった文法や言語仕様を確認している。Procがいまいちわからなかったんだが、理解した、ようにおもう。Proc.new do hoge end がマジで意味わからなかったんだがが、わかった。なんでわからなかったかというと、do hoge end は Proc.new(hoge) という記述のシンタックスシュガーであるという理解をしていたから。do hoge end はブロックと呼ばれるものとして言語内部に存在していて、Proc.newはブロックを渡してやるとオブジェクトとして扱えるようにしてくれる。把握した。

しかし、こういう本はなんでこういう言語仕様になっているか、みたいな思想が解説されないから悲しいな。書けるようにはなるけれども。そういう深く知りたくなったらmatzのプログラミング言語Rubyを読むしか無いのかな。しかし10年前の本なんだが大丈夫なんだろうか。たぶんRuby1.8系が解説されてるんじゃないかな。でもK&R本みたいなもんで原典だから実装言語のバージョンは古かろうが、思想の部分は吸収出来るかも知れない。