Maxima compiles code to binary, and has done so, oh for a couple of
decades.

 Since Maxima is part of Sage, one might hope that William would be
aware of this feature.

  Example.

g(x):=block([s:0],for i thru x do s:s+i^2,s);

g(10000);  takes 0.15 seconds.

compile(g);   converts g to lisp and compiles it with an optimizing
compiler.

g is now about 5X faster.

if one inserts declarations, e.g.  mode_declare(i,fixnum, x, fixnum,
s, fixnum),
the code goes about 10X faster.   I think that one can improve the
speed
substantially beyond that by setting optimization levels in the (lisp)
compiler.
I was using a GCL-based Maxima.

RJF


-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to