2017年も終わりに近づいてきたので振り返りをしようと思う。
さて、皆さんは新年になったときに抱負を掲げるタイプだろうか?僕はそうではない。普段は。なのだが今年2017年は珍しく1月1日、それも新年が明けた瞬間に抱負をポストしている。相当のやる気があったのだろう。
それがこちらだ。
どうだろうか。今年の僕は抱負を実現できていたであろうか。それをこれから振り返っていこうと思う。
…
振り返りは数秒で終わった。これっぽっちのの疑いもなく僕はがんばっていた。
来年も今年のように、掲げた抱負に粒々辛苦と取り組んでいきたい。
ところで話は変わるが、最近時間があるときは Elm のチュートリアルをちょこちょこと進めている。
まだ半分くらいしかやっていないが、なかなか楽しい。ただ、チュートリアルの内容自体も丁寧で読み易いのだが、Haskell like な文法はこれが初めてだと頭に入ってきにくいかもしれない。また、カリー化とか部分適用とかが数行でさらっと流されたりするのでどっかで補強する必要はある。たぶんすごいH本にざっと目を通しておくのが一番だと思う。
僕の場合、「何かWeb アプリでも作ろっかな〜」と思ったときにフロントエンドの実装 (あとデザインね…) がやる気を減退させる要因となることが多い。得意じゃないので、そこに思いを巡らすとめんどくせーって気分になってしまう。それを少しでも楽しくしてくれるものとして Elm に期待しつつこれからも触っていこうと思う。
今年を思い返すと、この Elm に限らず、純粋に「プログラミング言語のお勉強」的なやつを目的としてやっていたものは、(Go を除けば):
- Haskell
- Erlang
- Swift (FRP Style)
などで、自分の好みの方向性が巷で関数型と呼称されるプログラミングに寄ってきているのは間違いないと思う。
世の中が、例えばジョー・セルコが「プログラマのためのSQL (第4版)」の序文で予見しているように
オブジェクト指向言語はその地位を確かなものにした。だが、次の10年で関数型プログラミングにとって代わられるだろう
となっているかどうかは疑問だが、Rust/Kotlin/Swift/Julia などの新しいマルチパラダイム言語がこぞって関数型の要素を色濃く取り入れたものになっているのは間違いないので、まー今のところは実務で使っているわけじゃなくて趣味でやっているようなことが無益にはならなそうってのは普通に喜ばしくはある。
意識せず無益という言葉を使ってしまった。何が無益かという判断は容易ではない。これに対しては割と日々考えていることがありこのままポエムを続けそうになったがまた別のポストに譲ることにする。