なんでもセミナーが終わりました.

色々と質問とかツッコミとかいただいたのでメモ.

  • ポストプロセッサがあるらしい.
    • Perlで書かれているらしい.知らなかった.
  • 型検査が脱糖より前なのはなぜか。
    • その方がすっきりするからなのか、そうでなければならないのか.
    • 型エラー時にすでに脱糖されたかのようなエラーメッセージが出る事があるらしい.
  • Dictionary Passingで使用される辞書のフォーマット.
    • 複数の辞書をどうやってマージして一つにするのか.
    • これはちゃんと調べとくべきだった.
  • 複数ファイルにまたがった関数呼び出しが,融合変換されるのか?
    • 最初質問をされた時は,書き換え規則が他のファイルにも適用されるのかという意味だと思って間違えた返答をしてしまった.
    • これはもちろん,すでにコンパイルされたオブジェクトファイルが再コンパイルされるような事は起こりません.
  • ガベージコレクションの具体的な仕組み
    • 一つのthunkが複数回参照されるので,いつ回収すればよいのか分からない.
    • STG -> C--の過程で,GCの為のヒントを生成していたはず.
    • thunkが回収されるかされないかはパフォーマンスにかなり関係してしまう.
  • spineless tagless G-machine が Shared term graphに名前変更されたのはなぜか?
    • 自分はソースコードのコメントミスかと思ったが、shelarcyさんからDynamic taglingというのが実装される為,taglessという名前が不適切になり,名前変更したのでは?という話を伺った.
    • Dynamic taglingというのは評価戦略に関わってくる話らしい.基本的に正格性の決定はコア言語の時点で行われるが,それを実行時にも行うとか.調べてみたい.
  • STG -> C--の部分の説明不足.
    • 反省.
  • GHC Commentary
    • 読んだ事がなかったorz読もう.
  • セミナー後の食事では,並列化の話題で盛り上がった.
    • 並列化に関しては自分はほとんど何も知らない状態.
    • おもしろそうだった.

発表が拙くて,無駄な事を話したり大事なところが分かりにくかったり反省だらけですが,個人的にはいい経験になりました.
来ていただいた皆様有難うございました.

大学の実験が忙しかったりと,しばらくブログを休んでいたのですがそっちが一段落したので,上に書いたような事から調べて書こうと思います.
発表資料は,いろいろ間違いがあったので手直しをしてアップします.