GHCソースコードリーディング勉強会 第1回 行ってきた

第0回に続いて、
GHCソースコードリーディング勉強会 第1回 #readghc に行ってきた。

というか発表しました。

発表資料:
GCをみればRTSが見えてくる、かも。。。

まー、ちょっと読み込み不足なところもあって、メンバー見たらかなりこわい人達だったので、これは殺される!って思ったんだけど、予想通りやさしく殺していただきました。

いちおー、下記のような質問がこたえられなかったんで、これはおいおい調べておきたいと思います。

  1. nurseryとgeneration 0は同じ?(いちおう、Commentaryのここによると、nurseryからgen 0へコピーする、といった記述があって、まるでnurseryという明示的な領域があるように書いてあるが、、、)
  2. Promotionの前にAgingをやっているはずなのだが、相当するコードが見当たらない。

自分のほか、3名の方が発表されていました。


@nothingcosmosさん
飛び込みLTスゲー。GHCのLLVMへの対応について。LLVMに対応するためにあの手この手使ってるサマがよくわかりました。。。というか、RTSの型超越的自由奔放実装はやはり良くないのでは?と思ってしまいました。

@khibinoさん
Core最適化処理を追加する!GHCのterm re-writingの処理を実装されてて面白かった。ツリー変換ぐらいまでならHaskellでサクッと(とは行かないかもだが)書けちゃうのはGHCの一つの魅力かなと思いました。

@master_qさん
gdbデバッグCommentary GeneratedCode (I know kung fu)の解説。20分で話しきれるわけもなく速すぎてわからんかったわ。

最後に、当初の時間余りの見込みをはるかに通り越してハーフウェイギリギリまでやっちゃってすいませんでした。みんなmaster_q師匠のkung-fu聞きたかったに違いない。。。

STG祭りとCapabilityまわりの挙動について今後期待します。

Low Layer楽しいよ!

        • -

懇親会ではsherarcyさんに並列処理(Par Monad)教えてもらったんで、近々にSMPコードを書きたい。

        • -

資料を追記(2012/10/01)
議事録: HaskellJP wiki - Workshop/ReadGHC/1
http://wiki.haskell.jp/Workshop/ReadGHC/1

readghc 第一回 - Togetter
http://togetter.com/li/381712