2008/04/20
strstr 関数の haystack と needle
$ man strstr char *strstr(const char *haystack, const char *needle);
オブジェクト A からオブジェクト B を見つける関数を書く場合、オブジェクト A に haystack 、オブジェクト B に needle という引数名を付けるのは PHP の文化だと思っていたのですが、どうやら UNIX の文化だということが判明しました。少し調べてみた感じだと「 Needdle in a haystack 」という英語のイディオムが元ネタになっているらしくて、意味は「見つけるのが困難なぐらい大きなオブジェクト (haystack) の中にあるオブジェクト (needle) 」らしいです [1] 。直訳だと「干し草の山の中の針」です。こういう味のある名前は好きですが、ボキャブラリが低いとさっぱり意味がわからないという弊害を伴います。
[1] | http://en.wikipedia.org/wiki/Needle_in_a_haystack |
- Category(s)
- offtopic
- The URL to Trackback this entry is:
- http://dev.ariel-networks.com/Members/matsuyama/haystack-and-needle/tbping
Re:strstr 関数の haystack と needle
という私も最初はhaystackという聞きなれない単語に戸惑いましたが。