![見出し画像](https://assets.st-note.com/production/uploads/images/116679402/rectangle_large_type_2_e7c9c274d69db7827b1fd84527f5037c.jpeg?width=1200)
パイプラインを「写経」した
おつかれ様です。Y研究員です。プログラミング文体練習を「写経」で理解しながら楽しんでいます。楽しくなってきたので、とりあえずPythonで一周したら別言語でもう一週しても良いかなと思いました。
さて今日はパイプラインです。関数で返す結果を次の関数が入力として受け取ります。関数を書き並べて、最後に数珠つなぎです。最後の数珠つなぎが読みにくいですが、よく整理はされています。
# あえて改行は無しで数珠つなぎ
print_all(sort(frequency(remove_stop_words(make_list(filter_and_normalize(read_file(sys.argv[1]))))))[0:25])
パイプラインと言えば、UNIXシェルのワインライナーですね。「|」でコマンドをつなげます。一部ではシェル芸なんても言われてます。一撃必殺みたいで、華麗に使えるとかっこいいです。複雑になってくるので呪文にも見えます。
パイプラインでつなぐワンライナーは、タコベルプログラミングとアメリカ人は言うらしいです。組み合わせで沢山メニューが有るように見せかけるファミレスから名前を取ったようです。日本なら「すき家」でしょうか。
書籍では関数プログラミングの歴史などが熱く語られていました。そして最後にやっぱりHaskelが言及されていました。気にはなるけど、なかなか手は出しにくいです。実務だとベンチャーにいた時に、一人でガッツリHaskelで開発してる人がいました。しかし他に保守できる人がいなかったので、最後にはJavaScriptで書き直しさせられているのを見ました。しかし、気にはなります。。。
次の話題は工夫してコードをなるべく短く書くコードゴルフです。その点、Pythonは短く書くのに優れていますね。
最近は横着して無料フォト素材を使っています。関数ということで関数電卓を探しました。しかしドル札を勘定しながらどうやって関数電卓を使うのかゃゃ疑問です。
それではまた!
無料のプログラミングクラブCoderDojoを運営するにあたり寄付を受け付けています。お金は会場費・Wifiの費用・教科書に使用します。