On Jun 30, 11:44 pm, Robert Bradshaw <[EMAIL PROTECTED]> wrote: > As the author of the original fast_float stuff, I want to give a big > +1 to this project. I've been wanting to do something like this for > some time but it's never gotten high enough on my priority list to > actually code up. One caveat is that you go with a more general > instruction set, I would like to see benchmarks to make sure that > there isn't any speed regression.
Certainly benchmarks will be involved :) > > By default, \function{fast_callable} only removes a bit of > > interpretive overhead from the evaluation, but all of the individual > > arithmetic operations are done using standard \sage arithmetic. You > > can > > specify a particular domain for the evaluation using \code{over=}: > > > sage: ff = fast_callable(f, over=RR) > > the keyword "over" sound odd to me, maybe "domain." I'll change this; thanks for the suggestion. > > To provide \function{fast_callable} for your own class (so that > > \code{fast_callable(x)} works when \variable{x} is an instance of your > > class), implement a method \code{_fast_callable_(self, etb)} for your > > class. > > This method takes an \class{ExpressionTreeBuilder}, and returns an > > expression tree built up using the methods described above. > > I think common subexpressions should be (loosely) checked for > equality, *not* restricting to the same Python instance only. Hmm... this is a tradeoff between speed in constructing the fast_callable and speed in using it. Do other people think that common subexpressions are likely? > The question of unpickling old fast_float objects has come up. These > may have gotten attached to pickled symbolic expressions or > polynomials, so should be unpicklable. However, if one writes a > compatible _unpickle_FastDoubleFunc then one doesn't need to care > they whole old implementation around. I can't find any caching for fast_float objects (I can't see anywhere they would get attached to a symbolic expression or a polynomial). Am I just not looking in the right place? > - Robert Carl --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---