意味論周辺のつながりを知ったタイミング
mrsekut.iconは以下の分野を独立だと思って独立に本を読んだりしていた
言語処理系
型理論
圏論
数理論理学
計算理論
それぞれの雑なきっかけ
言語処理系
tcfmを聞き始めて低レイヤに興味を持ちはじめ、コンパイラやインタプリタを作ってみたりした
言語ごとの思想の違いなどに触れるのがたのしーってなってた
型理論
型はなんとなく良いものだ、ということは業務でTypeScriptを使っているうちに感じていたが、まだその能力の大きさには気づいていなかった
Haskellでモナドなどを理解していき、やっとスタート地点に立ったなとなってからGHC拡張で型の遊びに触れるようになり楽しさに気づいたきがする
TaPLでやっていることが徐々にわかるようになり、
高階多相型や依存型や篩型とかラムダキューブとか、そういうの説明を読んで表層が理解できる程度になってきた
言語処理系を自作しているのもよく働き、自分で型検査器を作って、型推論を実装したりしているのも良かった
「型推論」も最近(2020/4ぐらい?)になって仕組みと実装を知った
圏論
2018年頃から存在と一番最初にやる圏の要素ぐらいは知っていたが、まぁすごい人がやるものなんだろうと思い距離をおいていた
2019年後期に、昔やっていたインターンの上司が圏論勉強会を開いていたので、上司に久しぶりに会う目的で参加してみた
勉強会の内容は全く理解できなかったがなんか面白かった
帰ってから数日、Haskellと圏論の関連があることなども相まってとりあえず軽い気持ちで図書館で教科書を借りた
「圏論の道案内」の難易度が手頃だったので気づいたら読み進めていた
それほど本気でやるつもりはなかったけど、すすめるうちに楽しくなってきていた
zatsubenで、他の人と一緒に勉強している感じも良かったのかもしれない
数理論理学
3回生の後期の授業を選択するときに選択肢の中から選んだ
プログラミングと少し関連する分野だとは思っていたが、選んだ当時はそんなに重宝するものだとは思っていなかった
他の授業と同じように課題のためだけのものになるのでは、ぐらいに思っていた
計算理論
これも3回生の後期の授業でとった
「チューリングマシン」って聞いたことあるけどよく知らんなって思って選択した
前情報などは一切知らない状態で、興味のある本棚を眺めてたらたまたま背表紙が目に入ったので、なんとなく借りた
1章で概要が説明されていた気がするが、そこで点と点がつながる感覚を得た
上に挙げたような、別々だと思っていた分野はかなり近い部分で結びついていた
mrsekut.iconはこの辺の分野全部をひっくるめて「意味論ちっくなやつ」と総称している
今となっては当たり前だが、誰に聞いたわけでもなく、たまたま読んだ本で知ったので、かなり衝撃だった
ラムダ計算とかを知ったのもこの本だなmrsekut.icon
名前は知ってたかな、少なくとも内容は全く知らなかったと思う