2017-01-01から1年間の記事一覧

GHC Generic Programming と代数的データ型

Haskell Advent Calendar 2016 の 12日目のエントリーです。 代数的データ型と Functor Generic Programming は代数的データ型の構造を Functor の直積と直和のネスト構造に対応付けることで、 任意の代数的データ型に対する操作の記述を可能にする仕組みで…

OverloadedLabels と Haskell Relational Record

Haskell (その2) Advent Calendar 2017 の 18日目のエントリーです。 OverloadedLabels のレコードでの利用 GHC 8.0.1 以降では OverloadedLabels 拡張がサポートされたことにより、 適切な定義を追加しておくことで、レコードのフィールド名の衝突を気にせ…