いろいろ
最近とくに皆さんにお伝えしたい事実というのは「蒟蒻畑は凍らせてもウマい」ということである。完全に凍りきらず、かといってシャーベットとも違う独特の食感がよいのである。もちろん、あのサイズの氷塊を丸呑みするわけはなく、カップからちょっとだけ押し出して齧るようにして食べるとちょうどいい。食うなら自己責任で、といちおう書いておこう。お試しあれ、と気軽に書けないのは悲しいところ。
http://blogger.ukai.org/2008/10/3-code-reading-date.html を読む。面白いのだがGNUのdate前提になっている。まぁ話題はlinuxだろうからそれでいいんだが、たとえば最近でもMacとかの標準コマンド群はGNU coreutilではないから、これではちょっと困る。まぁ正直、あの辺はもうぜんぶGNU coreutilsでいいよ、という気もするのだが……(わたしはMacでも*BSDでもcoreutilを入れて使う軟弱者である)。
で、さらっとFreeBSDのソースを見てみると-jを指定すると時刻を更新しないらしい。あとは通常の-rを使えばいいから、date -j -r `date +%s`がFreeBSDでの正解といったところになるのだが、-jはMacのdateにはないようだ。FreeBSD dateに-jが導入されたのはログによると1999年で、OSXよりかなり前なのだが……。ちなみにOpenBSDには2005年、NetBSDには2006年に移植されたようだ。
ということで*BSDのやり方はすぐわかったのだがMacでのやり方はよくわからんかった。詳しい人はいませんか。
http://arton.no-ip.info/diary/20081010.html#p01
どうでもいいトリビアに類することだけど、code searchの件数調べによると、 defualt > deafult > defautl > defalut といった順番のようです(編集距離1の場合)。見たことないtypoだと思ったけど、やっぱりマイナーなミスのようで>defalut
なぜそんなものが実際のコードに存在するかというと、C的にはラベル扱いになるわけで、「そのswitchにはdefaultがない」と解釈されてコンパイルエラーにはならないという理由があるからなのですが、この種のミスをうまく警告するのはどうしたらよいか。-Wswitch-defaultをつけるとdefaultが存在しないすべてのswitchに警告を出すが、たとえば入力がenumですべてのenumを列挙しているような問題ない場合でも警告を出すので厄介だ。-Wunused-label(-Wallでも可)があると参照されないラベルに対して警告が出るから、これで「defined but not used」警告を出す、というあたりが現実的な解かな。
それにつけても、『ルーンマスカー』復活というのは何度見ても目を疑うよなぁ。これを機に単行本を引っぱり出して読み返してみたのだが、何とも言えない気恥ずかしさというかいたたまれなさというか、いわく言いがたい感情が襲ってきて大変なことに。
date -r … の場合、-j の有無に関わらず、時刻変更しないのでは?
あれ、そうですね。何を勘違いしていたのだろう。失礼しました。
ところで、 date -j は Leopard で導入された様子。