gretl examples.

By the way, the topic of my

first example was "recursion is slow";

it contains non-recursive version

which is thousands times faster

on 32-bit system

It seems, on 64-bit the difference

is smaller

Oleh

21 січня 2016, 17:10:14, від "Allin Cottrell" <cottrell@wfu.edu>:

On Thu, 21 Jan 2016, Riccardo (Jack) Lucchetti wrote: > On Wed, 20 Jan 2016, Allin Cottrell wrote: > >> Perhaps we should offer a prize for the first example of actual time-saving >> (and/or improvement in accuracy) in sending a calculation of the sort that >> might be required in gretl out to julia for computation. > > Easy: just take Oleh's recursion example. > > <hansl> > set echo off > set messages off > > function scalar fib(scalar n) > return n<2 ? n : fib(n-1) + fib(n-2) > end function > > set stopwatch > eval fib(30) > native = $stopwatch > > foreign language=julia > function fib(n) > if n<2 > return n > else > return fib(n-1)+fib(n-2) > end > end > println(fib(30)) > end foreign > julia = $stopwatch > > print native julia > </hansl> > > <output> > 832040 > 832040 > > > native = 71.920384 > > julia = 4.4912745 > </output> For sure, that's an example of something that julia does a lot faster than gretl. But my notional prize is not yet awarded since if I insert this native function <hansl> function scalar smartfib(scalar n) if n < 2 return n endif scalar r5 = sqrt(5) return (((1+r5)/2)^n - ((1-r5)/2)^n)/r5 end function </hansl> and time it as "native_smart", I get <output> 832040 832040 832040 native = 35.508119 native_smart = 8.5512991e-05 julia = 0.54034932 </output> Your example shows that recursion is a _lot_ faster in julia; so now we want a case where recursion is actually needed. Allin _______________________________________________ Gretl-devel mailing list Gretl-devel@lists.wfu.edu http://lists.wfu.edu/mailman/listinfo/gretl-devel