なぜこれを書くのか
私がQiitaに投稿した記事を見た方から、メールが届きました。
プログラミング言語のHaskellを勉強し始めたものの、難しくてやめようかと考えているそうです。
その気持ちも非常によく分かります。
すごいH本が出版されてから年月も経ち、それなりに勉強しやすくなったとはいえ、お世辞にもHaskellを学ぶ環境が整っているとは言えません。
私はHaskellで製品開発をする会社を保守運用していたことがあり、また自分自身もHaskellでプログラムを書いています。
また、Haskellを普及させるべく、「こわくないHaskell入門」という記事を書いたこともあります。
これらの経験を踏まえ、この機会にあらためて「なぜHaskellを学ぶと良いか」についてまとめたいと思い立ちました。
Haskellについてまだよく知らない方が、入り口として読める内容を目的としているので、できるだけ専門用語を使いませんし、厳密な言葉の定義なども極力省きます。
また、この記事は「なぜHaskellを学ぶと良いか」であり、「なぜ他の言語よりもHaskellを使うべきか」について多くは語りません。
もし後者について知りたければ、末尾のなぜ他の言語よりもHaskellを使うべきかをご参照いただくか、ググればいくらでも情報が手に入ります。
みずから一歩を踏み出し、Haskellを学ぼうと決めた方に、「Haskellには時間を投資する価値があるんだ」と自信をもっていただくための内容です。
まずHaskellへの誤解を解こう
私に送られたメールは
関数型言語は手続き型と比較していいものですか?
と問いかけるものでした。
実はこの質問に、多くのHaskell初学者がつまづく誤解が潜んでいます。
その誤解されがちなHaskellの真実は次のとおりです。
- Haskellは関数型言語だから優れているのではない
- Haskellは手続き型でもある
- Haskellでは手続き型な書き方もよく使う
まずは、この3つの事実について詳しく考察しましょう。
突然の終焉
残念ながらこの記事はここで終わりです。
一部の人間のクズみたいな人たちがクソみたいなコメントをつけたからです。もちろん多くの人は称賛してくれました。でも、そんなクズがいるなら無料で公開する気なんかなくなりますよね。ま、いつも文句ばっかりでまともに自分の手で何かを生み出したこともないクズにはそういう気持ちはわからないだろうけどさ。
この記事はとても価値のあるものですから、読みたい方には有償で内容のバックアップをお配りします。「成長したいっす!」なんて口だけじゃなく、身銭を切る覚悟がある方はTwitter(現X)かなんかで連絡してお金を払ってください。