Arc Forumnew | comments | leaders | submitlogin
1 point by almkglor 5875 days ago | link | parent

Somebody push this on the arc-wiki ^^ I'm at the office, the internet connection at home is broken so I was severely Arc-deprived last weekend ^^

  (mac withrec (parms . body)
    " Assigns a set of local variables for a given `body'.
      Assignment is simultaneous
      Functions assigned to local variables may refer to
      other local functions:
        (withrec
           (f1 (fn (x) (aif (cdr x) (f2 it)))
            f2 (fn (x) (aif (car x) (f1 it))))
           (...))
      See also [[with]] [[withs]] [[let]] [[fn]] [[do]] "
    `(let ,(map car (pair parms)) nil
        (= ,@parms)
        ,@body))