r5rs приводит пример
(letrec ((even?
(lambda (n)
(if (zero? n)
#t
(odd? (- n 1))))) ;; ---> <bindings> should have
;;the form ((<variable1> <init1>)
;;в данном случае
;;<variable1> n
;;<init1> (lambda (n) ...)
(odd?
(lambda (n)
(if (zero? n)
#f
(even? (- n 1)))))) ;;---> <bindings>
(even? 88)) ;;---> <body>
library syntax: (letrec <bindings> <body>)
Из-за того что
library procedure: (odd? n)
library procedure: (even? n)
These numerical predicates test a number for a particular property, returning #t or #f.
пример выглядит не совсем понятным.
Бросьте более читаемый примерчик использования letrec.