Please add Kawa to the list of existing implementations.
Kawa does allow the following: (define (using-later-procedure-1) (define x (y)) (define (y) #t) x) (define (using-later-procedure-2) (define x (y)) (display x)(newline) (define (y) #t) x) It is easy to pre-evaluate and pre-imitialize variables that are bound directly to a lambda form. If that feature is important, I don't know. We definitely should allow mutually recusive local function definitions - but beyond that I don't have a strong opinion. -- --Per Bothner p...@bothner.com http://per.bothner.com/