A full implementation of Session Types

π計算の型に セッション型というのがあって、そいつを Haskell上に実装して PPL2009 で発表しました。

質問

  • なぜ Associated Types や Type Families ではなく Functional Dependencies か?
  • 他の言語に応用可能か?
  • モナドは?
  • 関連研究との比較は?
  • 一般化できない?
  • aliasing はどのように回避しているか?
  • 再帰は?