関数型祭りに参加してきました

会社のスポンサーのおかけで関数型祭りに参加してきました。 技術系のイベントへの参加はコロナ後すっかり減りましたが、やっぱり楽しいですね。個人的に幾つの思うことがありました。

AI の話題の少なさが面白い。多くの界隈は AI で何かをいかに作ることに精を入れてるが、関数型祭りでは AI の話がほぼなかった。みんな作ってる過程が好きで、応用できたら嬉しいが、できなくても「作り」「研究」自体が楽しい職人気質を感じました。唯一 AI に関係ありそうなのは弊社の社員の LLM に書かせる自作言語の話で、それも実用性というより研究、応用よりも実験に近い話でした。常に利益や成長を求める社会の中で、趣味と面白さだけで駆動するオアシスのようなところだった。

応用の話ももちろんありました。圏論、代数的エフェクト、証明系など難しい話はたくさんありましたが、応用に関しては「ビジネスロジックに ADT 入れたら色々良くなりました」みたいな、基本に忠実なケースも多かった。HERP は Haskell, OCaml, Cyclejs などの新規採用をやめてる会社として知られてる中、他社の技術選定のバランスに興味を持ちました。HERP はどうして関数型を諦めたのか(いや、Nix だけはめっちゃ順調に使ってる)って何度も聞かれました1し、こちらも他社さんに関数型言語をどうやってうまく長く使えてるのかを聞きました。例えば JaneStreet さんは OCaml を使ってるのが有名ですが、多くのソフトウエアは社内向けで、例えば OCaml で書かれた Web frontend は Wasm にコンパイルされて最適化してても結構なサイズですが、社内のみ配信するなら実はそこまで問題ないという、特殊な環境だからこそ成り立つ部分があったりする。

それ以外にもPHPでも関数型したい話だったり、Elixirでプロセスを分散環境でマイグレーションしたり、いわゆる Haskell 系ではない関数型の話もあった。個人的にはそっちの方が面白かったです。理論の話よりも、多少現実でできること、できないことを正直に聞けて楽しかったです。よく考えたら Objective-C も関数型では? valueForKeyPathmap も reduce もできるし。


1

その答えはまた そのうち 書きます。書いたらこの記事更新します。