Все ли в Haskell хранится в банках, даже простые значения?

Как выглядят в куче Haskell бантики для следующего значения/выражения/функции?

val = 5                -- is `val` a pointer to a box containing 5?
add x y = x + y        
result = add 2 val     
main = print $ result

Было бы неплохо иметь представление о том, как они представлены в Haskell, учитывая его ленивый режим оценки.

41
задан vis 12 December 2011 в 17:54
поделиться