That was interesting. Thanks for the update. Was there another test case that we should analyse?
Regards, Elias On 24 August 2015 at 23:08, Juergen Sauermann <juergen.sauerm...@t-online.de > wrote: > Hi, > > the *to_value()* function is used for the general case of *f/B* where *f* > is, for example, > a user-defined function, or *B* is nested. > > In the special case where* f *is a built-in scalar function and *B* is > simple, one can > compute *f/B* without using *to_value()* and by calling the corresponding > Cell-level > function (for *f*) directly. This approach is already implemented for the > inner and outer > products of built-in scalar functions, but not yet for *reduction* and > *scan*. > > If someone wants to fix this, please let me know. Otherwise I will look > into it after my vacation. > > /// Jürgen > > > On 08/23/2015 03:59 PM, Elias Mårtenson wrote: > > On 23 August 2015 at 21:42, fred <fred_wei...@hotmail.com> wrote: > > It strikes me that memoizing to_value may be useful. On second thought, >> it wouldn't be that useful. But, to_value should be optimized. I'll >> have a look (when I get cycles). >> > > In this particular case the cell content are numbers, right? So every call > to Cell::to_value() (most of the 66007104 of them) would be creating a > new Value to hold it, yes? This would also be responsible for 66007104 > Value_P destructor calls. > > Regards, > Elias > > >