[squeak-dev] Quadrangle >> exampleInViewer baby graphics bug
Igor Stasenko
siguctua at gmail.com
Sun Apr 25 08:54:17 UTC 2010
On 24 April 2010 10:55, Lawson English <lenglish5 at cox.net> wrote:
> Lawson English wrote:
>>
>> Thanks. I had gotten that far with John Dougan's help and tried to save
>> back to the repository but it wouldn't accept since I lack a password. I
>> converted all references of Floats to Fractions just to see if there was an
>> easy way to give it higher precision but it slowed down to < Apple ][ speeds
>> when I did that.
>>
>>
>> Obviously the naive way isn't going to work. I gotta think there's some
>> glitch with what I did, or incompatibility with the algorithm and
>> Fractions....
>>
>>
> Or maybe things like x^100/y^100 takes a rather long time to calculate...
>
you can optimize, rather than multiplying x*x*...*x 100 times in a row,
use a power of two numerics.
Given that:
x^y = (x^a)*(x^b)
where y = a+b
so,
x^100 = (x^64)*(x^32)*(x^4)
then, you can reuse an intermediate results of computation i.e:
x2 := x*x.
x4 := x2*x2.
x8 := x4*x4.
x16 := x8*x8.
x32 := x16*x16.
x64 := x32*x32.
result := x64*x32*x4.
so, totally 8 multiplications, instead of 100.
>
> sigh...
>
>
> So an arbitrary precision Mandelbrot generator in Squeak isn't going to be a
> cakewalk, apparently, or perhaps I'm missing something else obvious.
>
>
> Lawson
>
--
Best regards,
Igor Stasenko AKA sig.
More information about the Squeak-dev
mailing list
|