O
Size: a a a
O
O
PG
f
V(
PG
AZ
AZ
PG
(let l (cs)
(let ((c (read-char)))
(unless (eof-object? c)
(l (cons c cs)))))
PG
(let l ((cs '()))
(let ((c (read-char)))
(if (eof-object? c)
(reverse cs)
(l (cons c cs)))))
AZ
(let l ((cs '()))
(let ((c (read-char)))
(if (eof-object? c)
(reverse cs)
(l (cons c cs)))))
PG
AZ
PG
PG
AZ
PG
PG
PG
(let ((x v)...) e...) = ((lambda (x...) e...) v...)а let с именем это сахар над лямбдой с комбинатором неподвижной точки
let f ((x v)...) e...) = ((fix (lambda (f x...) e...)) v...))