Workshop/ReadPFDS/1

調整

Purely Functional Data Structures読書会 第1回 - PARTAKE

スケジュール

↑のpartakeに書いた。

資料

議事録

録画と写真

録画1 録画2 録画3

写真

Weight-Balanced TreesのパラメータをCoqによる証明で決定する話 @kazu_yamamoto

Weight-Balanced Trees

Coqを学ぶ必要性が理解できた。 今は型を使ってアルゴリズム同士の界面のインピーダンスミスマッチを防止しているが、 アルゴリズムそのもののエラーチェックをすうためには証明が非常に重要。

2章 @master_q

2章について

「Persistenceとはgitのようなバージョン管理システムと似ている」とブチあげたが、あえなく撃沈。。。 orz

3-1章 Leftist Heaps @master_q

Leftist Heap - 言語ゲーム

Haskellerにとってはすんなり理解できるWebページ。さすが @propella さん。 @master_q は時間がなくって資料作成をサボったらしい。

3-2章 Binomial Heaps @imsuten

ホワイトボード

ツリーがリストになっていて、リストの1要素がbitのように振る舞うのが面白い。

3-3章 Red-Black Trees @kazu_yamamoto

永続二色木 - あどけない話

Persistenceな実装と破壊的な実装では異なる赤黒木ができる。 赤黒木はツリーが一意に決まるような規則ではないので、解釈によって異なるツリーができあがることはある。 Persistenceは非破壊はので、関数型と相性が良いことがメリットだが、 この例ではさらにアルゴリズムが単純化できるというメリットもおまけで付いてくることがある、 ということを学んだ。

ネタ案出し

とりあえず「演習問題の答あわせ+ネタ発表(あれば)」という勉強会スタイルにすることにした。

次回

2

分担
分担

演習問題によって難易度がばらばらなので、わからないことは Chaton haskell-ja で聞いてください。