Haskell の末尾再帰に付いて

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/haskell/haskell-jp/570

うーん。遅延評価で非正格だと、ループに展開されてスタックが消費されない、なんていうメリットがそもそも意味をなさないのかな?必要になってから値が計算されるってのは、敢えて例えるならイベントループみたいな感じにもともと展開されているようなものと考えられる。気がする。


いずれにせよ、reverseとか使っちゃダメです。遅延評価が台無しです。

http://i.loveruby.net/ja/stdhaskell/samples/tail2.hs.html

素晴らしい。