Haskellに入門してみたい

私は現在クラウド製品のFrontendをメインとしておりまして

SPA(Single Page Application)の開発に携わっています。

アプリケーション設計の際、副作用を持つ純粋でない関数やグローバル変数が散財すると、複雑なページになるほどに管理が難しくなり、また共同開発ではどうしても他人の書いたロジックをミスリードしバグを埋め込んでしまう事があります。

出来るだけスコープの広い値は持たせないようにと設計を心がけますが

デザインの都合上Rxなどを使用し仮想的なグローバル変数を設けてしまうこともあります、、中々難しい。

 

そこで、副作用を持たない純粋関数のみを使用する事で堅牢性を担保しているHaskellの世界に興味を持ちました。

フロントエンドで動く言語では無いので、使用するにはjspのようなサーバサイドレンダリングになると考えられ、実務に直接的に活かせる訳では無いように思われますが

一度、関数型言語の世界に触れるのは後学の為にも良いかと思われます。

ちなみに近年ではAltJS系の言語としてElmのようなHaskellの堅牢性・型安全性・テスタビリティを志向したものも存在するようです。

 

Haskell学習の手始めとして、評判の良い「すごいHaskellたのしく学ぼう!」を読み始めました。

Monadに辿り着くまでにFunctor,Applicativeと前提知識が多く難しい。。

元々、学習コストが高いが故に実戦導入されにくい言語ではありますが、少しずつ腰を据えて学習していきたいです。

先ずは、言語仕様を理解してからPaiza等の問題を低ランクからHaskellで解き始めるようなアプローチが必要なのかも、、。