「やさしい Haskell 入門」や「本物のプログラマは...」 などで紹介されている
遅延パターンの説明で
-- ファイル: 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>> の意味は?