最初 Python で、Haskell における dropWhile のような関数があるかを調べようとした。
これはたまたま、Pythonにも同名の関数があるので (itertools.dropwhile) google で検索すればよかった。
しかし一般に「述語関数が真になるまで、リストの先頭から順番に要素を捨てていく」関数はどうやって探せばいいのだろうか?
Haskell なら、述語関数とリストからリストへの関数なので、(a -> Bool) -> [a] -> [a] を hoogle (http://www.haskell.org/hoogle/) で検索する。takeWhile dropWhile filter の3つが見付かり、それぞれ説明を見ればいい。
Python ではどうやって探すのがはやいのか?Javaなら?C++なら?
ちょっとしたプログラムを Python で書くとこんなところでイライラしてしまって結局 Haskell を使ってしまう。