I don't consider this a flaw in the language. How are we going to write a recursive function when not allowing (define (x arg) expr-possibly-calling-x-recursively)? Not by a Y-combinator I hope.
I think the following is not too difficult to explain to beginning programmers. In (define (x arg) ...) x is masked in ... In (let ((x ...)) body) x is NOT masked in ... In (letrec ((x ...)) body) x is masked in ... Jos > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Matthias Felleisen > Sent: 21 August 2010 17:43 > To: Shriram Krishnamurthi > Cc: [email protected]; Eduardo Cavazos > Subject: Re: [racket] Nested scope in D vs Racket > > > Okay, that's the one thing why I dislike local and internal define. > But should we really throw out the idea of nested x defs for > this one flaw? > > _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users

