Değerlerin önceden hesaplanıp hesaplanmadığına veya hatıra mı olduğuna bağlı olarak bir Haskell işlevi yazılabilir mi? Örneğin. lazyShow :: [Int] -> String
normalde ?
olarak thunks ve hesaplanan değerler gösteriyorsa, GHCi bizHaskell'de görmezlik gözlemlenmesi
> let nats = [0..]
> lazyShow nats
0 : ?
> nats !! 5
5
> lazyShow nats
0 : 1 : 2 : 3 : 4 : ?