Diary?::2006-06-01

00:41

オリジナルの URL は失念したが、 Python のリストが sort() メソッドで自身を返さないのは、以下のようなコードでリストがソートされているかどうかわからなくなるからという理由らしい。

for i in ls.sort():
...

上記のコードを見る限り、以下の可能性が考えられる。

sort() メソッドが None を返すことで、こういう紛らわしいコードにならなくなるのだと。 sorted() 関数が導入されたのは、やっぱ for i in ... の ... にソートの操作を書けた方が手っ取り早いケースがあるからなのだろうけど、 sorted() (reversed() もそうか) という関数であれば副作用無しってのがわかりやすいか (pop() メソッドみたいに利便性や整合性の理由付けがない限り、副作用のある操作は None を返した方が良い) 。

そういや、 STL では例外安全のために pop() メソッドの戻り値が void になっているって話もあったな。 C++ はもう二度と使う気が起きないが、 C++ を取り巻く技術に付いては示唆に富んだものが多いかもしれないとは思う。

22:04

ここ二日ほど晩飯を作ってない。これは悪い傾向だ。

どうでもいいが、今の会社の社内ネットワークの各 PC のネーミングは、管理者の趣味のオペラにちなんでいるらしい。聞き覚えのない単語ばかりが並んでいると思ったら、そういうことだったのか。

Written by Kuwata Chikara
Creative Commons