Woohoo!  Awesome, I've forked you, and I'll start digging in soon.  At a
high level, this looks great.  Not so sure about so many operators - I
don't know that we really need to have such a weighty syntax (a %*% b),
java devs are going to be much more familiar with simply doing a.times(b),
and I don't think we should keep them from that.

Quick question: I had a build error on your branch:

[INFO] --- maven-scala-plugin:2.15.2:compile (default) @ mahout-math-scala
---
[INFO] Checking for multiple versions of scala
[WARNING]  Expected all dependencies to require Scala version: 2.9.3
[WARNING]  org.apache.mahout:mahout-math-scala:0.9-SNAPSHOT requires scala
version: 2.9.3
[WARNING]  org.scalatest:scalatest_2.9.2:1.9.1 requires scala version: 2.9.2
[WARNING] Multiple versions of scala libraries detected!
[INFO] includes = [**/*.scala,**/*.java,]
[INFO] excludes = []
[INFO]
/Users/jake/open_src/gitrepo/mahout-twitter/math-scala/src/main/scala:-1:
info: compiling
[INFO] Compiling 5 source files to
/Users/jake/open_src/gitrepo/mahout-twitter/math-scala/target/classes at
1374825106823
Downloading:
http://artifactory.local.twitter.com/repo/org/scala-lang/scala-compiler/2.9.3/scala-compiler-2.9.3.jar
Downloaded:
http://artifactory.local.twitter.com/repo/org/scala-lang/scala-compiler/2.9.3/scala-compiler-2.9.3.jar(11260
KB at 216.2 KB/sec)
Downloading:
http://artifactory.local.twitter.com/repo/org/scala-lang/scala-compiler/2.9.3/scala-compiler-2.9.3.pom
Downloaded:
http://artifactory.local.twitter.com/repo/org/scala-lang/scala-compiler/2.9.3/scala-compiler-2.9.3.pom(2
KB at 1.6 KB/sec)
[ERROR]
/Users/jake/open_src/gitrepo/mahout-twitter/math-scala/src/main/scala/mahout/math/DiagonalOps.scala:14:
error: value rightMult is not a member of
org.apache.mahout.math.DiagonalMatrix
[INFO]   def :%*%(that: Matrix) = m.rightMult(that)
[INFO]                              ^
[ERROR]
/Users/jake/open_src/gitrepo/mahout-twitter/math-scala/src/main/scala/mahout/math/DiagonalOps.scala:16:
error: value leftMult is not a member of
org.apache.mahout.math.DiagonalMatrix
[INFO]   def %*%:(that: Matrix) = m.leftMult(that)
[INFO]                              ^
[ERROR] two errors found
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO]
------------------------------------------------------------------------


On Fri, Jul 26, 2013 at 12:07 AM, Dmitriy Lyubimov <[email protected]>wrote:

> Hello,
>
> i would like to put for discussion a proposal of adding a module
> mathout-math-scala to Mahout containing various scala DSLs for Mahout
> project.
>
> Here is what i have got so far :
>
> http://weatheringthrutechdays.blogspot.com/2013/07/scala-dsl-for-mahout-in-core-linear.html
>
> for now it is in-core stuff only, but it can also be used to script out
> driver pipelines for Mahout DRM and solvers. (Some code, in particular,
> tests may look ugly at the moment).
>
> By proposing it as a part of Mahout, I of course pursue some selfish goals:
> since the stuff covers a lot of Mahout matrix APIs, if I have it away from
> Mahout, i would be having hard time maintaining it in sync with Mahout as
> the project morphs its apis. So I want to make sure that committers run my
> tests too before committing new changes.
>
> (I am actually using this for spark-based solvers bsed on Mahout DRMs and
> to make it more accessible to our data scientists to work with -- at some
> point I hope to contribute spark ports of some Mahout work too).
>
> Respectfully,
> -Dmitriy
>



-- 

  -jake

Reply via email to