Re: [racket-dev] How about adding this simple list-shuffling procedure to racket?

2010-11-12 Thread Jay McCarthy
I think we should put in a list shuffler into the core.

Which should we use? The faster one?

Jay

On Thu, Nov 11, 2010 at 11:26 AM, Eli Barzilay e...@barzilay.org wrote:
 5 minutes ago, Neil Toronto wrote:
 Carl Eastlund wrote:
  It's pick a random, uniform ordering, and then sort based on it.
  The random keys are chosen per element and cached (hence
  #:cache-keys? #t), not per comparison.

 Spanking good point, my good man. I think you're right.

 It's a very common method, and the classic example of the
 decorate-map-strip method that has some perl-guy's name slapped on it
 now.

 The wikipedia page on FY is pretty decent -- and one concern that I've
 encountered in the past is that it's sensitive to what that page calls
 modulo bias.  The decorated version is more robust, especially with
 (random) that works at the highest `random' granularity.

 (BTW, to compare them you should use some (random 1000) thing to avoid
 the fp cost.)

 --
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev




-- 
Jay McCarthy j...@cs.byu.edu
Assistant Professor / Brigham Young University
http://faculty.cs.byu.edu/~jay

The glory of God is Intelligence - DC 93
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Re: [racket-dev] How about adding this simple list-shuffling procedure to racket?

2010-11-12 Thread Robby Findler
I think we want the one recommended by the statisticians. :)

Robby

On Fri, Nov 12, 2010 at 2:36 PM, Jay McCarthy jay.mccar...@gmail.com wrote:
 I think we should put in a list shuffler into the core.

 Which should we use? The faster one?

 Jay

 On Thu, Nov 11, 2010 at 11:26 AM, Eli Barzilay e...@barzilay.org wrote:
 5 minutes ago, Neil Toronto wrote:
 Carl Eastlund wrote:
  It's pick a random, uniform ordering, and then sort based on it.
  The random keys are chosen per element and cached (hence
  #:cache-keys? #t), not per comparison.

 Spanking good point, my good man. I think you're right.

 It's a very common method, and the classic example of the
 decorate-map-strip method that has some perl-guy's name slapped on it
 now.

 The wikipedia page on FY is pretty decent -- and one concern that I've
 encountered in the past is that it's sensitive to what that page calls
 modulo bias.  The decorated version is more robust, especially with
 (random) that works at the highest `random' granularity.

 (BTW, to compare them you should use some (random 1000) thing to avoid
 the fp cost.)

 --
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev




 --
 Jay McCarthy j...@cs.byu.edu
 Assistant Professor / Brigham Young University
 http://faculty.cs.byu.edu/~jay

 The glory of God is Intelligence - DC 93
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Re: [racket-dev] How about adding this simple list-shuffling procedure to racket?

2010-11-12 Thread Eli Barzilay
Any objections to `shuffle' in `racket/list'?

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] How about adding this simple list-shuffling procedure to racket?

2010-11-12 Thread Jay McCarthy
Not by me.

On Fri, Nov 12, 2010 at 2:25 PM, Eli Barzilay e...@barzilay.org wrote:
 Any objections to `shuffle' in `racket/list'?

 --
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev




-- 
Jay McCarthy j...@cs.byu.edu
Assistant Professor / Brigham Young University
http://faculty.cs.byu.edu/~jay

The glory of God is Intelligence - DC 93
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev