GHCでは評価戦略がデフォルトで遅延評価ですが、このために引数に関数を適用しただけでは評価自体は行われずに、サンクとして扱われます(ここではinliningやstrictness-analysis等の最適化は考慮しません)。 サンクとは評価を進めるための情報は揃っているけども(遅延評価のために)評価を進めないままに扱うための構造です。GHCでのサンクの実態は引数のないクロージャです。 そしてこのサンクの中身はHaskell上から確認する手段はありません... と思っていたのですが、最近1は中身を確認することができる様ですね。 http://hackage.haskell.org/package/ghc-heap-view ghc-heap-viewはサンクを含むHeap上の構造を確認するためのライブラリです。 前提条件 ここでは以下の環境で動作確認を行っています。 MacOS ghc-8.