[mvn compile|test|package] will do the trick.

Everything is built-in.  The code generator is a maven plug-in that runs
whenever you build math.  That is why the build isn't real incremental.
 Not that it matters much since the compile is so fast.

Getting a good iterator would be awesome.  Should be easy to have internal
state variables with getters to avoid cons'ing up temporary values or to
avoid boxing.  For key/value pairs, the iterator can nominally be over the
keys but have an extra method to be called after next() which will give the
value without a real lookup.

On Mon, Mar 11, 2013 at 4:42 PM, Jake Mannix <[email protected]> wrote:

> On Mon, Mar 11, 2013 at 4:21 PM, Ted Dunning <[email protected]>
> wrote:
>
> > It is part of math now since we had zero pull for it separate from math.
> >
>
> I see the code templates living in math, yes, but how to build it?
>
>
> > What did you need?
> >
>
> Iterators.
>
> The way we use OpenIntDoubleHashMap in our primary sparse vector impl is to
> use forEachPair() to fill a secondary structure with the keys and values,
> and then iterate over this.  In addition to being wasteful in the usual
> case of iterating over all values (both for CPU and memory), it's super
> wasteful if your iteration terminates early: you've already done the full
> O(n) walk, but the "second pass" might terminate after a few values: you
> want to know whether the vector has any values > 1.0.  You might find out
> that the first one does, but instead of being an O(1) operation, it's O(n).
>
> For raw OpenIntDoubleHashMap, you can use forEachXYZ methods, but exposing
> these in the Vector interface is a bit heavy-handed.  What would be better
> would be to just properly implement the iterateAllNonZero() method to
> properly delegate to an efficient iterater() method on
> OpenIntDoubleHashMap.  It's not hard to write (it's basically what we have
> in RandomAccessSparseVector), it just needs to be implemented in the
> templates.
>
>
> >
> > On Mon, Mar 11, 2013 at 1:43 PM, Jake Mannix <[email protected]>
> > wrote:
> >
> > > Question which I ought to know the answer to, but don't: if we want to
> > make
> > > changes to mahout-collections, what's the build process / maven target
> to
> > > do this?
> > >
> > > --
> > >
> > >   -jake
> > >
> >
>
>
>
> --
>
>   -jake
>

Reply via email to