Re: [racket-dev] for loops with interleaved escape continuations
Interestingly enough, I tried to explain this idea to the Imperative Advanced Placement crowd in the 1990s. With functional programming -- control from tail-recursive functions -- is more expressive than programming with limited loops because you can (1) break/resume/continue/foobar your 'loops' more easily (including loops that communicate actual values instead of void) and (2) you can write abstractions over these things once you have good use cases. Now we're in a position to do so and what John Sam sketch out is finally a realization of this idea. -- Matthias _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] for loops with interleaved escape continuations
Loop syntax and sugar is fine. And having #:continue and #:break keywords at the top of the form is sufficient warning of surprises ahead, IMHO. I do have a minor ongoing concern that people coming from other languages lately latch onto the for family of forms from the start, don't get enough exposure to named-let, and/or mutually/self-recursive procedures, and then end up shoehorning problems into the for forms (with flag variables and redundant checks and such). break and continue can be good shoehorns. I still half-seriously like the idea of having unlockable language feature achievements, like unlockable equipment in video games. I might play with that idea soon. Neil V. attachment: neil.vcf_ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] for loops with interleaved escape continuations
On Jul 2, 2014, at 2:26 PM, Neil Van Dyke wrote: Loop syntax and sugar is fine. And having #:continue and #:break keywords at the top of the form is sufficient warning of surprises ahead, IMHO. I do have a minor ongoing concern that people coming from other languages lately latch onto the for family of forms from the start, don't get enough exposure to named-let, and/or mutually/self-recursive procedures, and then end up shoehorning problems into the for forms (with flag variables and redundant checks and such). break and continue can be good shoehorns. I still half-seriously like the idea of having unlockable language feature achievements, like unlockable equipment in video games. I might play with that idea soon. Cute idea. It generalizes the teaching languages, which at some point we wanted to explore, too. We dubbed this HLI as in Human-Language Interface. -- Matthias _ Racket Developers list: http://lists.racket-lang.org/dev
[racket-dev] Release for v6.0.2 is about to begin
The release process for v6.0.2 will begin in about a week. If you have any new features that you want in and are relatively close to being done, now is a good time to do that. _ Racket Developers list: http://lists.racket-lang.org/dev