Opened 6 years ago

Closed 6 years ago

#1078 closed defect (worksforme)

letrec* can be done as Chicken letrec

Reported by: johnwcowan Owned by:
Priority: major Milestone: someday
Component: unknown Version: 4.8.x
Keywords: Cc:
Estimated difficulty:

Description

Discussion on scheme-reports has clarified that implementing letrec sequentially (i.e. as letrec*), which is what Chicken does, is allowed by R7RS. Therefore, for R7RS compatibility, all that is needed is to expose letrec* as equivalent to letrec:

(define-syntax letrec*
  (syntax-rules ()
    ((letrec* bindings . body) (letrec bindings . body))))

Change History (1)

comment:1 Changed 6 years ago by sjamaan

Resolution: worksforme
Status: newclosed

Thanks for pointing this out. If we're unable to solve the kanren issue (#1068) we might do this. Until we've figured out the cause of that one, I prefer to keep it the way it is, it encourages a more portable programming style.

Note: See TracTickets for help on using tickets.