2016-12-28
前日の強い意志とダブル目覚まし時計により、午前7時30分過ぎに起きた。(すばらしい!)
寒いので湯船につかり、午前9時から仕事を始めた。やっぱり早起きすると仕事もすぐに始められる(というよりも、そういう思い込みがあることで、実際にもすぐに始められるということかも知れない。)(自己効力感的なものか!?)。
夕食をたべたりお風呂に入ったりもしたものの、午後11時過ぎまで働いた……。まあツイッターやってる時間も多かった。もっと集中したい……。たぶん10時間以上働いた……。(働き過ぎ。)
それでやっと仕事は一段落ついた。
仕事を通して、ウェブアプリケーションフレームワークに関する啓蒙をだいぶ得たので、記事を書きたくなった。しかし、時間がない……。(仕事はまだスケジュールから遅れてる。)
あと、 PHP の記事も書きたいんだよね……。リレーショナルデータベースの記事も書きたいな……。
きょうは、 C# の yield
を習得した。
一般的に、わざわざ yield
を用いるような機会というのはほとんどないのだが、今回は既存のライブラリのデザインが悪かったために用いることになった。
C# の yield
は、戻り値の型が IEnumerable
でなければならない。まあ、それは当然なのだが、それがなんか面白い。メソッド内で yield
を使うと、それに呼応して、戻り値の型も IEnumerable
にしなければならないってことで、その特殊な規約がある感じが面白い。
IEnumerable
は、この yield
もそうだが、 LINQ 式クエリや foreach
でも使われる。言語に深く根ざした型なのだろう。
それなのに、総称型なのでいちいち IEnumerable<Foo>
と書かなければならないのがめんどくさい。Haskell ではリストは特別扱いで [Foo]
のように書ける。そんな感じだったら良いのに。あと「IEnumerable」って長い。
yield
は Python, Ruby にもあるらしい(なんと PHP にもあるようだ。まあどうでもいいが。)。まあ、たぶん同じようなものだろう。
美にかかわる病気がひどくなったので、あしたは病院に行こうと思う。
きょうは、あるものを買いたくなって、買い物に行こうかと思ったけどけっきょく行かなかった。あしたは、その用事も済ませよう。
早起きの効果はすばらしかった。また早く起きられるようにしたい。