> BTW, I suggest to cover one more issue with local variables, namely > whether arguments to a function are seen in sub-functions, which are > IMHO a very good addition to `let` and `let*` to write clean and > readable code – often much more readable than anonymous lambda > expressions. > > Example:
D'oh, this should be ``` (define (foo bar) (define (baz) ... (if bar) ; Is 'bar' visible here? If yes, when is ... ; 'bar' expanded? At the time 'baz' is ; defined? At the time 'baz' is executed? ``` Werner