[#11439] comments needed for Random class — "NAKAMURA, Hiroshi" <nakahiro@...>

-----BEGIN PGP SIGNED MESSAGE-----

15 messages 2007/06/12

[#11450] Re: new method dispatch rule (matz' proposal) — David Flanagan <david@...>

This is a late response to the very long thread that started back in

17 messages 2007/06/13

[#11482] Ruby Changes Its Mind About Non-Word Characters — James Edward Gray II <james@...>

Does this look like a bug to anyone else?

10 messages 2007/06/16

[#11505] Question about the patchlevel release cycle — Sylvain Joyeux <sylvain.joyeux@...4x.org>

1.8.6 thread support was broken in bad ways. It stayed for three months

20 messages 2007/06/20
[#11512] Re: Question about the patchlevel release cycle — Urabe Shyouhei <shyouhei@...> 2007/06/20

Hi, I'm the 1.8.6 branch manager.

[#11543] Re: Apple reportedly to ship with ruby 1.8.6-p36 unless informed what to patch — James Edward Gray II <james@...>

On Jun 27, 2007, at 4:47 PM, Bill Kelly wrote:

10 messages 2007/06/27

Re: comments needed for Random class

From: Hugh Sasse <hgs@...>
Date: 2007-06-13 09:11:47 UTC
List: ruby-core #11446
On Wed, 13 Jun 2007, gga wrote:

> Different distributions like random, uniform, etc. are excellent ideas
> too.  This is a standard naming conventions used in math (and pretty
> common, for example, in the 3d industry, when you create a renderer).

Problem with this is that gaussian distributions need the centre and
variance specified.  How about a method that given a block uses that
block as a cumulative probability distribution funtion, so performing
a 1:1 mapping from uniform input to non-uniform output?  The existence
of such a function would act as documentation on how to get nonuniform
distributions.  Then a collection of mapping functions could be provided
to support this, Rayleigh, Poisson, Gaussian.

A method to create a cumulative frequency table may be useful in
Monte Carlo methods, and save people having to rewrite one each time.
It would be very difficult to get this wrong if there were

inject_with_index(initial_accumulator=nil) {|accumulator, value, index| ... }

Then it would be (untested)  
  f.inject_with_index(0){|a,v,i| cf[i] = a + v }


        Hugh

In This Thread