------art_68629_31459126.1154514536329
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On 8/2/06, Daniel Baird <danielbaird / gmail.com> wrote:
>
> On 8/2/06, Daniel Baird <danielbaird / gmail.com> wrote:
> > Hi all,
> >
> > I've been golfing around with the sieve of Eratosthenes.  Here's what
> > I've got so far:
> >
> > a=(2..100).to_a;p a.each{|c|a.map!{|d|c&&d&&c<d&&d%c==0?nil:d}}.compact
> >
> > It's already under 80 chars, but I'd still love to remove the
> > definition of the array a, and do the whole thing with no semicolons.
> > Any suggestions?
> >
>
> Improvement:
>
> a=(2..100).to_a;p a.each{|c|a.reject!{|d|c<d&&d%c==0}}


you'd love this one
   [*2..100]
;)
Cheers
Robert

..swapped to reject, and now I don't have to test for c and d being
> nil, or do the final  compact.  Seems ok even though I'm editing the
> array I'm looping through..
>
> ;D
>
> --
> Daniel Baird
> http://tiddlyspot.com (free, effortless TiddlyWiki hosting)
> http://danielbaird.com (TiddlyW;nks! :: Whiteboard Koala :: Blog ::
> Things That Suck)
>
>


-- 
Deux choses sont infinies : l'univers et la bóŐise humaine ; en ce qui
concerne l'univers, je n'en ai pas acquis la certitude absolue.

- Albert Einstein

------art_68629_31459126.1154514536329--