TAPL.ts #33: Reconstructing TS 4.2 union types

2024/04/03(水)19:30 〜 21:00 開催
ブックマーク

イベント内容

ざっくばらんに言うと……

「型システムのきほんのきに、「型システム入門」(TAPL)やTypeScript型推論アルゴリズム(checker.ts)をみんなで読み進めることで、入門してみませんか!?」

ということです。要するに、TAPLの輪読会です!適宜TS関連の資料やTSのchecker.tsも読みます!

この誘いに心惹かれたカタは、ぜひ以下を読み進めてください👶

※どれだけ読み飛ばして頂いてもよいのですが、「必要なもの」と「進め方」の2セクションは必読でお願いします!

※ 「コンピューターサイエンス専攻/情報系じゃなかったなあ」とかは気にしないで下さい!(私も全然違います🐤)

参考

目指すこと

下記を目標として進めていきたいと考えています🐢

  • 型そのものやその周辺の概念(e.g. 型安全、型付け)について理解を深める
  • 初歩的な型推論アルゴリズムの実装について理解を深める
  • 型システムに関する論文や実装コードの読解に、ある程度取り組めるようになる

具体的な内容

1章: TAPLの読み進め(型推論まで)

まずはTAPLを読み進めることを主軸において、TypeScriptの型推論アルゴリズムのコード(checker.ts)を適宜参照していきます。

TAPLについて、具体的には下記の章を順に読んでいければと思っています。

  • 3章: 型無し算術式 読み終わりました!
  • 5章: 型無しラムダ計算 読み終わりました!
  • 8章: 型付き算術式 読み終わりました!
  • 9章: 単純型付きラムダ計算 読み終わりました!
  • 11章: 単純な拡張 読み終わりました!
  • 22章: 型再構築 読み終わりました!

これは、TAPL序文で述べられている活用例や章間依存関係を参考にしたロードマップです。この背後には、要するに「型やその周辺概念で優先度が高いものをおさえたら、基本的な型推論アルゴリズムまで最短ルートでいってみようよ!」という設計思想があります。

この設計思想が根本にあるので、このロードマップは会の状況に応じて増えたり減ったりする可能性があります!しかし、その場合もTAPLとchecker.tsを参照するという基本コンセプトは変えないつもりです🐸

また、サクサク進むとは思っていないので、きっと半年くらいやるのだろうと思っています。

2章: 双方向型チェックの理解

Reconstructing TypeScriptを読み進めます。

  • Part0 ← 各自読んできてください
  • Part1 ← 読み終わりました!
  • Part2 ← 読み終わりました!
  • Part3 ← 読み終わりました!
  • Part4 ← 今回はここの続きから
  • Part5
  • Part6

3章: mini-typescriptの理解

(予定) https://github.com/sandersn/mini-typescript

必要なもの(必ず目を通して下さい!)

読み進め枠・参加枠共通

  • 型システム入門(TAPL)
    • 参加者の方々にはこの本を買って参加してもらうことを前提としています!!画面への本書の投影は一切行いません👶
    • オーム社さんの書籍紹介ページ: https://www.ohmsha.co.jp/book/9784274069116/
    • Amazonさんや達人出版会さんから購入できます。もちろん他のチャネルもあると思います、ご自由に!
    • もちろん紙版でも電子版でもどちらでも大丈夫です!!!!
  • 会の進行や議論の展開が思っていた以上にゆっくりでも、のんびり気楽に参加できる精神的な余裕
    • もちろん開始時間・終了時間は守ります!!予定していた部分が終わらないから次回に持ち越し、といったことが全然ありえるよということです
  • 会が動画撮影されていても動じない心の準備(「その他注意事項」をご確認下さい)

読み進め枠

  • 間違いを恐れず、お互いの理解するスピードを尊重しながら、自由な議論を楽しむマインドセット

参加枠

  • 自分のコメントが読み進め枠メンバーに拾ってもらえなくても気にしない気楽さ

進め方(必ず目を通して下さい!)

すべて、現時点での構想なので状況に応じて変更をしていくと思います!!!

形式

  • 読み進め枠と視聴枠を設け、下記のように役割を定めてみます📝
    • 読み進め枠: TAPLやchecker.tsを実際に読み進める。都度、自由に議論をする。視聴枠のメンバーが投稿するコメントは取り上げてもよいし、取り上げなくてもよい
    • 視聴枠: 読み進め枠のメンバーの読み進めや議論を視聴する。視聴プラットフォーム上でコメントを書くことはできるが上述の通り、取り上げられないこともある
  • 読み進めは下記のように進めます📖
    • 読み進め枠のメンバーでTAPLの文章を1~2文ずつ、まわしながら読む。小学校の国語の授業でかわりばんこの音読をしたときのイメージ
    • 読み進め枠のメンバーは分からないことや議論したいことがあったら、その都度言って、議論を始められる
    • その他、よしなにやる

日時

  • 毎週または隔週の水曜日に、19時半から21時に開催します🎉

場所

  • リモート開催です!: URLはページ上部の「参加者への情報」枠を参照

その他注意事項

下記にご留意下さい!

  • 各回は視聴枠の方々向けにgoogle meetで配信されます!録画も残し、問題のない形で公開しようと思っています👶

主催者のプロフィール

名前: canalun(かなるん)

github: canalun twitter: @i_am_canalun

株式会社テックタッチで、DOM上での要素の探索や埋め込みの処理、それにまつわるHTML/CSS/JSの仕様・挙動の深掘りをメインにエンジニアしています✌️ (DOMDOMタイムスを始めました!)

レコード集め、コードやvimのゴルフ、パズルが好きです👶

注意事項

※ こちらのイベント情報は、外部サイトから取得した情報を掲載しています。
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。

関連するイベント