生存報告所

日記だよ!

6/14 関数型まつり1日目

6/14(土) 睡眠時間4時間15分

「古古古古米」は、偉い人がもしIT出身だったら「古3米」と記述していたかもしれない。「古参米」とも読めるからいい感じ?

関数型まつり

関数型まつり2025 #fp_matsuri - fortee.jp*1

移動

 カンファレンス当日スタッフの朝は早い。昨晩に枕へ3回唱えていた「5時45分」という言葉の通り目覚め、シャワーで全てを洗い流してから荷物の準備に取り掛かる。

この時間ならまだ陽も昇っておらず街も寝ているだろうと予想していたが、そんなことはない。お日様は私よりも早く出勤しており、私が外に出る頃には何人ものおじいたちが半袖半ズボンで朝の散歩に出かけていた。は、早すぎる…!?

 

 「いやいや、私は今日お仕事に行くわけですからね。荷物も、気合も違うわけですよ…」と独り言を言いつつ駅に向かうと、何人ものスポーツ小学生たちが軍事行軍に出かけそうな大きな鞄を背負って並んでいた。すまん、君たちの方がよほど偉いな。生活習慣を小学生からやり直したい。

そして極めつけは、6時半でも5分に1本やってくる田園都市線。田舎の始発は、6時12分が最初で次は15分ごとかざらなんだぞ!

いつも安全運転をありがとうございます、みんな早起きして偉い!!

眩しい朝日を避けるように顔を覆い、発症したてのゾンビのようにのそのそと乗り換えて、中野のカンファレンス会場まで移動。

 

準備

 会場の8時開門に合わせて、集合したスタッフたちが順次入場していく。画角を正面左下ぐらいから見上げる構図で撮ったら、とてもカッコ良かったと思う。

警察映画に影響を受けすぎかもしれない。

 

 最初の10分でブリーフィングを行い、その後は各チームに散開して準備を開始。

 当日スタッフの私達は今日会場に来るのが初めてだが、チームリーダーの指示で担当会場を少しずつ整える。最初こそ初対面同士でギクシャクしていた時間もあったが、「これどうします?」という些細な会話を皮切りに、「マニュアルで分からない点ありますか?」「そこ手伝いましょうか?」とお互いに声を掛け合って、会場準備を完成させていく。
ここで、私の脳内にはルイーダの酒場が流れていた。

 

 私はまだカンファレンススタッフ2回目の参加だが、運営当日に「あぁ、この案内も必要ですね」と感じて、追加の連絡用紙を提示することがたまにあると思っている。

「あぁ書きますよ」と1人のスタッフが言ってくださったのでお願いすると、見やすく伝わりやすい掲示が現れた。

こんなのを提示
「分かりやすかったよ!」と彼をもっと褒めて欲しい。

私の字は「きっと思考が筆記速度に追いついていないんだよ」「アインシュタインの物まねしているんだよね?」「ミミズが這った跡」と言われるぐらいに可読性が低いため、こういった読みやすい字とデザインには密かな憧れがある。

思わず「字がお上手なんですね」と声が出ると、「こういう書体が好きなんですよね」と軽くおっしゃっていた。全カンファレンスに1人ずつほしい逸材じゃないか??*2

 

 10時過ぎた頃には会場準備はほぼ完了。リハーサルをしたり、最後の確認をしていると、受付会場から入場者さんを迎える声が聞こえてくる。

さぁ、楽しいおまつりの始まりだ!

 

DAY1

私が見たセッションの感想。

スライドリンクは公式HPが管理しているはず( ˘ω˘ )

Elixir で IoT 開発、 Nerves なら簡単にできる!?

 TrackBにて、本日1本目のトーク。IoTという組み込み開発に便利なフレームウェア更新などの機能を多数備えたライブラリの紹介。

浅学なものでElixirについてほとんど存じ上げなかったのだが、多数の便利な機能を聞いているうちに、「IoTで私も何かできるのでは…?」という感覚を得たような気分になった。

わかる。IoT楽しそうよね。

 

関数型言語テイスティング: Haskell, Scala, Clojure, Elixirを比べて味わう関数型プログラミングの旨さ

 会場満員御礼の、我らが座長の午後1本目トーク関数型プログラミング歴12年の中で多数味わった関数型言語の「エッセンス」を求める旅。

 

 一言に「関数型言語」と言っても、動的型付けと静的型付けの言語があり、影響を受けた言語元もMLとLispという違いがある。そして作者の思想も入って分化していった言語たちの違いは、どれも”合理的”な表現があって面白い。

Scalaしか分からなかった私は、スライドでScalaが解説される度に、関数型箱推しの中で好きな単独アイドルが出たような気持ちだった。

 

 関数型祭り(というより前身のScalaMatsuri)では、魔導書を頭に流し込まれて1年かけて納得するようなセッションがあるのだが、このセッションの面白さを飲み込むにはそれでも足りない気がする。

 

`interact`のススメ — できるかぎり「関数的」に書きたいあなたに

  今回のカンファレンスでは”言語”についてを絞らなかったことで、関数型という同じパラダイムながら、並行世界のごとく今まで出会わなかった言語が再集合している。

 

 というわけで、次はHaskellの参戦。”命令的”と”関数的”という言葉をテーマに、30年前にも起こっていたという論争について語っていただくトークだった。

謎の記号が多くなってきたあたりで私は振り落とされてしまったのだが、伏線を回収して元に戻ってくるところで笑う声が多数聞こえたので、落ち着いて見直してみようかな…。

 

関数プログラミングに見る再帰

 「新卒3年目で、F#しか触っていません!? すごい会社があるものだな」と懇親会でも話題になっていたセッション。関数型で使われる再帰という書き方と、その最適化について、初心者でも噛み砕けるように説明頂いた。

記号こそ多いが、分かってしまえばシンプルにクイックソートもシンプルに書ける関数型の表現は素晴らしい。

 

 次の準備のため立ち去る際の質問では、「Clojureと比較して~」という話が出ていた気がする。新手の素人質問? ゼウスとユピテルが仲良く談笑してるの?

多数の関数型の専門家が集まっているだけに、言語間の交流も広がっているようで一スタッフとしては嬉しい。

 

 私も3つぐらいは勉強しておくべきだったか。

 国連入るのにも、3言語の習得は必要だもんな…。

 

What I have learned from 15 years of functional programming

 Scott Wlaschin先生という、『関数型ドメインモデリング』を書かれた先生に動画をいただいての基調講演。

 「関数型って何ぞや?」という疑問を噛み砕けずにいた方々も、ここで先生による関数型パラダイムについての説明で、やっと飲み込めるようになったかもしれない。小さな関数で大きな値をくみ上げるパイプの説明を聞いた時、私は「わっかる~~!!」と最後列で立ちながら蠢いていた。

 

幕間にて

 幕間では、担当スペースが別だったスタッフの方々にご挨拶。「昨年から引き続きありがとうございます」と言ってくださる方もいらっしゃれば、「お久しぶりです」とご挨拶に伺う方も。ごく狭い界隈にしか参加できていないが、少しずつ知り合いが増えていたのかな? 過去に行動した私が、今の私に小さな幸せをもたらしてくれている。

 

 カンファレンススタッフをするような人は、他のカンファレンススタッフもしていたり、なんなら主催している人もいらっしゃるため、「次はどんな面白い企画をされるんですか?」という話でしばし盛り上がっていた。

 

懇親会

 セッション終了後は汗だくで椅子を片付け、テーブルセッティングを会場の方にお願いして待機。最後は懇親会だぁ!

 

 隅のテーブルに集まって、知り合い半分、初めましてが半分という形でスタート。なんとこの会では不思議なことに、好きな言語で「Scala」と答えても不思議がる人がいないのである。世の中は関数型の使い手ばかりだと常識が歪んでしまう…!

 Scala使い、Rust使い、TS使い、Haskell使いと多種多様な言語の使い手が集まり、その良さと違い、「関数型言語使いはどんなエディタを使うのでしょうね~」という話まで広がって盛り上がる。Vim派が1/3くらいいた。

 

 各々の知り合いが順次集まり、最終的にサークルサイズのテーブルを9人で囲んでの談笑となった。もう既に1時間以上喋っているのだが、こんなニッチな話題で盛り上がれることなんてないから、懇親会の時間があと2時間欲しいよぉ!

 

 名残惜しくあるが、今日のプログラムはこれにて全て終了。

 「また明日!」と声をかけて、今日は解散となった。

 

帰宅

 明日も早いのに、日記の負債を解消するか~と思ってから頑張りすぎてしまった。

 明日会う方々は、よろしくお願いいたします。気になった人は、ぜひスライドを見ていただき、「来年も開催を!」と声も上げていただけると、主催チームの方が小躍りされると思います。

さぁ寝るわよ!

 

ごはん

 朝食:菓子パン

 昼食:ハンバーグ弁当

 間食:マックのポテト

 夕食:美味しい料理

 

 夜の懇親会ではホテルのバイキングのように美味しい料理をいただいたはずなのだが、話が楽しくて何も味を覚えていないな…。

スポンサーの皆様、ご馳走様でした!!

*1:コアスタッフお手製のElm製ページである。タイムテーブルごとに、「このトークの時間帯のツイート」という便利なボタンがあるので、有効活用してほしい。

*2:https://x.com/suda_sudameさん、ありがとうございます!!