Haskellで不毛気味な議論が炸裂中につきアゲ。

IOモナドの見た目副作用を普通に使って書かれてるプログラムと、
MLで、関数型の本意ではないって事で控えめに副作用を使ってかかれた
プログラムと、どっちがどっちだろうとかは思うね。
むしろ健全に副作用を副作用として生かして最小限につかえるMLの方が?

純関数型とかいうならストリームで書けよな。
IOモナドってロジックに副作用が見え隠れするもん。