Here's the release note for futures: - futures: added fsemaphores; 'future' primitive now no longer freezes futures; improved the logging messages futures produce
-James On Fri, Apr 29, 2011 at 12:05 PM, <dev-requ...@racket-lang.org> wrote: > Send dev mailing list submissions to > dev@racket-lang.org > > To subscribe or unsubscribe via the World Wide Web, visit > http://lists.racket-lang.org/dev/listinfo > or, via email, send a message with subject or body 'help' to > dev-requ...@racket-lang.org > > You can reach the person managing the list at > dev-ow...@racket-lang.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of dev digest..." > > > [Please handle dev list administrative tasks through the Web: > http://lists.racket-lang.org/listinfo/dev] > > Today's Topics: > > 1. Re: racket vs. scheme vs. clojure (as it appears to others) > (Matthias Felleisen) > 2. Re: racket vs. scheme vs. clojure (as it appears to others) > (Danny Yoo) > 3. Re: racket vs. scheme vs. clojure (as it appears to others) > (Matthias Felleisen) > 4. Re: release blurb for 5.1.1 (Eli Barzilay) > 5. Re: racket vs. scheme vs. clojure (as it appears to others) > (Eli Barzilay) > 6. Re: racket vs. scheme vs. clojure (as it appears to others) > (Stephen Bloch) > 7. Re: racket vs. scheme vs. clojure (as it appears to others) > (Joe Marshall) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Fri, 29 Apr 2011 12:10:25 -0400 > From: Matthias Felleisen <matth...@ccs.neu.edu> > To: Neil Van Dyke <n...@neilvandyke.org> > Cc: Racket Dev List <dev@racket-lang.org> > Subject: Re: [racket-dev] racket vs. scheme vs. clojure (as it appears > to others) > Message-ID: <a9d92e4f-3d60-400e-b427-a58eb14d9...@ccs.neu.edu> > Content-Type: text/plain; charset=us-ascii > > > > On Apr 29, 2011, at 11:31 AM, Neil Van Dyke wrote: > > > "Scheme" is usually a liability when someone used it in school years ago > (other than with HtDP). > > Sad. > > > Thanks for the idea. -- Matthias > > > > > ------------------------------ > > Message: 2 > Date: Fri, 29 Apr 2011 12:38:24 -0400 > From: Danny Yoo <d...@cs.wpi.edu> > To: Matthias Felleisen <matth...@ccs.neu.edu> > Cc: Racket Dev List <dev@racket-lang.org>, Neil Van Dyke > <n...@neilvandyke.org> > Subject: Re: [racket-dev] racket vs. scheme vs. clojure (as it appears > to others) > Message-ID: <BANLkTimrPyQmFqQeJ_LbknFLW2Ng902T=a...@mail.gmail.com> > Content-Type: text/plain; charset=UTF-8 > > >> ?"Scheme" is usually a liability when someone used it in school years > ago (other than with HtDP). > > Small anecdote: I had gone a small presentation at WPI about teaching > alternative concurrent programming models to undergraduates. The > presenter wanted to explore teaching with channels and actors. They > chose Google Go as the language to explore those models. I raised the > question in the after-session: why not use Racket? The presenter > responded with some shock: he had no idea Racket supported threads or > had channels. > > The presenter had gone through a HtDP class, and was convinced that > BSL was all that Racket was about. So I don't necessarily agree that > it's only the non-HtDP students who have a distorted understanding. > > > > ------------------------------ > > Message: 3 > Date: Fri, 29 Apr 2011 12:42:35 -0400 > From: Matthias Felleisen <matth...@ccs.neu.edu> > To: Danny Yoo <d...@cs.wpi.edu> > Cc: Racket Dev List <dev@racket-lang.org>, Neil Van Dyke > <n...@neilvandyke.org> > Subject: Re: [racket-dev] racket vs. scheme vs. clojure (as it appears > to others) > Message-ID: <cd2497a7-f6d3-4948-b0cf-f11f1541a...@ccs.neu.edu> > Content-Type: text/plain; charset=us-ascii > > > On Apr 29, 2011, at 12:38 PM, Danny Yoo wrote: > > >>> "Scheme" is usually a liability when someone used it in school years > ago (other than with HtDP). > > > > Small anecdote: I had gone a small presentation at WPI about teaching > > alternative concurrent programming models to undergraduates. The > > presenter wanted to explore teaching with channels and actors. They > > chose Google Go as the language to explore those models. I raised the > > question in the after-session: why not use Racket? The presenter > > responded with some shock: he had no idea Racket supported threads or > > had channels. > > > > The presenter had gone through a HtDP class, and was convinced that > > BSL was all that Racket was about. So I don't necessarily agree that > > it's only the non-HtDP students who have a distorted understanding. > > > I am aware of that. > > That's distinct from why I said 'sad'. > > > ------------------------------ > > Message: 4 > Date: Fri, 29 Apr 2011 12:45:55 -0400 > From: Eli Barzilay <e...@barzilay.org> > To: Matthias Felleisen <matth...@ccs.neu.edu> > Cc: dev <dev@racket-lang.org> > Subject: Re: [racket-dev] release blurb for 5.1.1 > Message-ID: <19898.60227.302124.283...@winooski.ccs.neu.edu> > Content-Type: text/plain; charset=us-ascii > > On Tuesday, Matthias Felleisen wrote: > > > > On Apr 26, 2011, at 3:46 PM, Jon Rafkind wrote: > > > > > kathy > > > * Addition of `define-wish' to the teaching languages and > > > corresponding addition of support for wishes in test reports and > > > check-expects (7758f508c56) > > > > This wasn't supposed to go in. > > I see that Matthew pushed a change that disables it in BSL -- is that > the only place where they were in? > > -- > ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: > http://barzilay.org/ Maze is Life! > > > ------------------------------ > > Message: 5 > Date: Fri, 29 Apr 2011 12:50:16 -0400 > From: Eli Barzilay <e...@barzilay.org> > To: Danny Yoo <d...@cs.wpi.edu> > Cc: Racket Dev List <dev@racket-lang.org>, Neil Van Dyke > <n...@neilvandyke.org> > Subject: Re: [racket-dev] racket vs. scheme vs. clojure (as it appears > to others) > Message-ID: <19898.60488.560050.367...@winooski.ccs.neu.edu> > Content-Type: text/plain; charset=utf-8 > > 8 minutes ago, Danny Yoo wrote: > > >> ?"Scheme" is usually a liability when someone used it in school > > >> ?years ago (other than with HtDP). > > > > Small anecdote: I had gone a small presentation at WPI about > > teaching alternative concurrent programming models to > > undergraduates. The presenter wanted to explore teaching with > > channels and actors. They chose Google Go as the language to > > explore those models. I raised the question in the after-session: > > why not use Racket? The presenter responded with some shock: he had > > no idea Racket supported threads or had channels. > > This is completely off-topic wrt the original thread, but IMO having > these tools in Racket means that you can play with them and contrast > various approaches in a better way. One example I show in my class is > the sieve way of generating prime numbers -- I do that first in lazy > racket: > > (define nats (cons 1 (map add1 nats))) > (define (divides? n m) > (zero? (modulo m n))) > (define (sift n l) > (filter (lambda (x) (not (divides? n x))) l)) > (define (sieve l) > (cons (first l) (sieve (sift (first l) (rest l))))) > (define primes (sieve (rest nats))) > > and then I show them a solution that is based on channels which is > more or less a direct translation from Rob Pike's talk at google > (which is why it relies heavily on state in each thread), and then one > more that uses generators. > > ---------------------------------------------------------------------- > #lang racket > > (define-syntax-rule (bg expr ...) (thread (lambda () expr ...))) > > (define nats > (let ([out (make-channel)]) > (define (loop i) (channel-put out i) (loop (add1 i))) > (bg (loop 1)) > out)) > (define (divides? n m) > (zero? (modulo m n))) > (define (filter pred c) > (define out (make-channel)) > (define (loop) > (let ([x (channel-get c)]) > (when (pred x) (channel-put out x)) > (loop))) > (bg (loop)) > out) > (define (sift n c) > (filter (lambda (x) (not (divides? n x))) c)) > (define (sieve c) > (define out (make-channel)) > (define (loop c) > (define first (channel-get c)) > (channel-put out first) > (loop (sift first c))) > (bg (loop c)) > out) > (define primes > (begin (channel-get nats) (sieve nats))) > > (define (take n c) > (if (zero? n) '() (cons (channel-get c) (take (sub1 n) c)))) > > (take 10 primes) > ---------------------------------------------------------------------- > > ---------------------------------------------------------------------- > #lang racket > > (require racket/generator) > > (define nats > (generator () > (letrec ([loop (lambda (i) > (yield i) > (loop (add1 i)))]) > (loop 1)))) > (define (divides? n m) > (zero? (modulo m n))) > (define (filter pred g) > (generator () > (letrec ([loop (lambda () > (let ([x (g)]) > (when (pred x) (yield x)) > (loop)))]) > (loop)))) > (define (sift n g) > (filter (lambda (x) (not (divides? n x))) g)) > (define (sieve g) > (define (loop g) > (define first (g)) > (yield first) > (loop (sift first g))) > (generator () (loop g))) > (define primes > (begin (nats) (sieve nats))) > > (define (take n g) > (if (zero? n) '() (cons (g) (take (sub1 n) g)))) > > (take 10 primes) > ---------------------------------------------------------------------- > > > -- > ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: > http://barzilay.org/ Maze is Life! > > > > ------------------------------ > > Message: 6 > Date: Fri, 29 Apr 2011 12:56:16 -0400 > From: Stephen Bloch <sbl...@adelphi.edu> > To: Danny Yoo <d...@cs.wpi.edu> > Cc: Racket Dev List <dev@racket-lang.org>, Neil Van Dyke > <n...@neilvandyke.org> > Subject: Re: [racket-dev] racket vs. scheme vs. clojure (as it appears > to others) > Message-ID: <971277c1-c191-43be-accd-50c7358df...@adelphi.edu> > Content-Type: text/plain; charset=us-ascii > > The last chapter of _Picturing Programs_ is entitled "Next Steps". It > mentions HtDP, HtDP2e, HtDW, HtDC, and a list of advanced Racket topics: the > Web server, modules, racket/contract, classes, macros, stand-alone > executables, and GUI and graphics libraries. Most of these topics (not to > mention futures, promises, threads, and channels) I'm only vaguely familiar > with myself, even having used PLT Scheme since 1998. So I'm not surprised > that somebody who had gone through a TS! workshop might not even be aware of > their existence. > > (When I'm programming in Racket for myself, I tend to work in ISLL + > racket/contract. Why would anyone need more than that? :-) ) > > > > Stephen Bloch > sbl...@adelphi.edu > > On Apr 29, 2011, at 12:38 PM, Danny Yoo <d...@cs.wpi.edu> wrote: > > >>> "Scheme" is usually a liability when someone used it in school years > ago (other than with HtDP). > > > > Small anecdote: I had gone a small presentation at WPI about teaching > > alternative concurrent programming models to undergraduates. The > > presenter wanted to explore teaching with channels and actors. They > > chose Google Go as the language to explore those models. I raised the > > question in the after-session: why not use Racket? The presenter > > responded with some shock: he had no idea Racket supported threads or > > had channels. > > > > The presenter had gone through a HtDP class, and was convinced that > > BSL was all that Racket was about. So I don't necessarily agree that > > it's only the non-HtDP students who have a distorted understanding. > > > > _________________________________________________ > > For list-related administrative tasks: > > http://lists.racket-lang.org/listinfo/dev > > > > ------------------------------ > > Message: 7 > Date: Fri, 29 Apr 2011 10:05:25 -0700 > From: Joe Marshall <jmarsh...@alum.mit.edu> > To: Matthias Felleisen <matth...@ccs.neu.edu> > Cc: PLT Developers <d...@lists.racket-lang.org> > Subject: Re: [racket-dev] racket vs. scheme vs. clojure (as it appears > to others) > Message-ID: <BANLkTi=qjasfvag49p5cfl4_ki0bicy...@mail.gmail.com> > Content-Type: text/plain; charset=UTF-8 > > On Fri, Apr 29, 2011 at 8:38 AM, Matthias Felleisen > <matth...@ccs.neu.edu> wrote: > > > > 2. Could you point me to a criteria that classify Racket as a 'fringe' > language > > and Clojure as a non-fringe language? > > This is no criterion, but it is suggestive: > > http://www.google.com/insights/search/#cat=5&q=racket%20-%20tennis%2Cclojure&date=1%2F2008%2040m&cmpt=q > > But to be fair, popularity is a terrible metric: > http://www.google.com/insights/search/#q=porn%2Cfood%2Cwater&cmpt=q > > This page shows the relative popularity of `DrScheme' to `Racket'. > https://sites.google.com/site/evalapply/name-change > > It appears that `Racket' has only recently overtaken `DrScheme' in > what people search for. > > > > -- > ~jrm > > > End of dev Digest, Vol 27, Issue 76 > *********************************** >
_________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev