関数型プログラミング言語Haskell Part12
■ このスレッドは過去ログ倉庫に格納されています
0755デフォルトの名無しさん
2010/08/22(日) 22:50:36遅延パターンの説明で
-- ファイル: TT.hs
module Main where
reqs = client inits resps
resps = server reqs
client a (b:bs) = a : client (next b) bs -- @非遅延束縛とした場合
server (c:cs) = process c : server cs
inits = 0
next d = d
process e = e+1
main = print $ take 10 reqs
-- ファイル END
非遅延パターンで実行形式を ghc --make TT.hsで作成し、
$ ./TT
TT.exe: <<loop>>
と表示され
ghci では
$ ghci TT.hs
:main
(エラー表示なしで終了しない)
となります。
実行形式の場合の <<loop>> とは、stack overflow となることを
実行時の処理系が検知して表示しているのでしょうか?その場合
ghci が終了しないのは何故でしょうか?
stack overflow と関係ない場合の <<loop>> の意味は?
■ このスレッドは過去ログ倉庫に格納されています