mahout-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sean Owen (JIRA)" <>
Subject [jira] [Commented] (MAHOUT-768) Duplicated DoubleFunction in mahout and mahout-collections (mahout.math package).
Date Sun, 24 Jul 2011 20:03:09 GMT


Sean Owen commented on MAHOUT-768:

It would just mean you depend on this math-collections module; in fact, according to this
issue you already do. You don't have to use the math bits. It doesn't bring much else in for

Doesn't this suggestion just get back to the original problem of a circular dependency? 

> Duplicated DoubleFunction in mahout and mahout-collections (mahout.math package).
> ---------------------------------------------------------------------------------
>                 Key: MAHOUT-768
>                 URL:
>             Project: Mahout
>          Issue Type: Improvement
>          Components: collections, Math
>    Affects Versions: 0.5, collections-1.0
>            Reporter: Dawid Weiss
>            Priority: Minor
>             Fix For: 0.6
> DoubleFunction is duplicated in Mahout Math and Collections. There are also other things
inside m.math.* package that are kept there to avoid circular dependencies... Simply removing
DoubleFunction from collections is not going to work because it is needed for compilation
(again, circular dependency between collections and math). I see two solutions:
> 1) extract the common definitions inside math.function.* into a separate module. This
is a clean solution, but obviously scatters the code even further.
> 2) create a compilation-time, optional dependency on mahout 0.5 in collections, remove
the entire mahout.math.* subpackage from collections and live with this. I don't know how
Maven handles circular dependencies of this type:
> collections [trunk] -> [optional, required at build time] mahout.math 0.5
> mahout.math [trunk] -> collections [trunk]
> it seems tricky and error-prone, but should also work.
> Looking for other ideas of cleaning this mess up, of course.
> Dawid

This message is automatically generated by JIRA.
For more information on JIRA, see:


View raw message