AT
. Call by name не включает мемоизации
Size: a a a
AT
SM
ЗП
ЗП
SM
AT
ЗП
VY
SM
(define x
(let ((save nil))
(lambda ()
(unless save
(set! save (evaluate-x))
save)))
ЗП
(define x
(let ((save nil))
(lambda ()
(unless save
(set! save (evaluate-x))
save)))
ЗП
ЗП
ЗП
force
тягать надо для () -> A
чтобы вытащить данные, а вот представте если там будет переполнение стека вызовов?M
C
AG
МБ
МБ
force
тягать надо для () -> A
чтобы вытащить данные, а вот представте если там будет переполнение стека вызовов?seq
или обвешивать параметры !
. Это же не кажется мерзким? :)seq
и !
в Haskell.T
K