Оба следующих блока кода должны (на мой взгляд) быть бесконечными циклами
Это работает
(define call/cc call-with-current-continuation)
(define l 0)
(define i 0)
((lambda ()
(call/cc
(lambda (k)
(set! l k)))
(write i)
(newline)
(set! i (+ i 1))
(l "ignore")))
Это не работает:
(define call/cc call-with-current-continuation)
(define l 0)
(define i 0)
(begin
(call/cc
(lambda (k)
(set! l k)))
(write i)
(newline)
(set! i (+ i 1))
(l "ignore"))
Единственная разница в том, что в одном используется лямбда, а в другом — начальный блок. Почему второй блок кода не работает?
Спасибо