私は Haskell の初心者で、プログラミング言語のクラスで Haskell に関する論文を書いています。サンプル コードを使用して Haskell の遅延性を実証したいのですが、実際に遅延性があるかどうかはわかりません。
doubleMe xs = [x*2 | x <- xs]
ghci で:
let xs = [1..10]
import Debug.Trace
trace (show lst) doubleMe (trace (show lst) doubleMe (trace (show lst) doubleMe(lst)))
出力:
[1,2,3,4,5,6,7,8,9,10]
[1,2,3,4,5,6,7,8,9,10]
[1,2,3,4,5,6,7,8,9,10]
[8,16,24,32,40,48,56,64,72,80]
お時間をいただきありがとうございます。