to be absolutely frank, if i could divorce easily from Colt, I would've divorced the entire scala code from Mahout. Unfortunately currently it is not very realistic case for me. More hopefully, we could patch Colt for major problems and add new backs there.
As for pure scala backend, it already exists and it is called Breeze project (something MLib uses internally), supported by David Hall (among others). It also includes a lot more common non-distributed math than just algebra. By my estimate, it is one of the most well-round and comprehensive math libraries in existence today. It has, however, had significant difficulties dealing with sparse/dense operation optimizations in the past, as well as modelling, not sure as of this very moment. Colt at some point was marginally better in typing sparse in-memory idioms. On Thu, Sep 25, 2014 at 5:32 AM, Saikat Kanjilal <[email protected]> wrote: > From a big picture perspective do we intend to keep colt around or write > scala implementations for functions like the aggregate, if so then I can > add scala code to do the aggregation and call it from the DSL for the norm. > > Sent from my iPhone > > > On Sep 25, 2014, at 12:25 AM, Ted Dunning <[email protected]> wrote: > > > > On Wed, Sep 24, 2014 at 11:09 PM, Dmitriy Lyubimov <[email protected]> > > wrote: > > > >> Aggregate is Colt's thing. Colt (aka Mahout-math) establish java-side > >> concept of different function types which are unfortunately not > compatible > >> with Scala literals. > > > > Dmitriy, > > > > Is this because we have other methods that describe the characteristics > of > > the function? > > > > What would be the Scala friendly idiom? Additional traits? >
