Dick,

Scalaz introduces very useful typeclasses and abstractions (like Functors,
Monads, Traverse etc) that let developer write universal and composable
code.

See following blog entries for more details:

(from Debasish Ghosh - Akka committer, author DSL in Action)
http://debasishg.blogspot.com/2010/11/exploring-scalaz.html

(from Eric Torrebore - creator of Specs/Specs2 framework):
http://etorreborre.blogspot.com/2011/06/essence-of-iterator-pattern.html

As far as I remember David Pollak used Scalaz for Lift's json library
implementation.

Here is the project page:
http://code.google.com/p/scalaz/


Vladimir

2011/10/20 Richard Hirsch <[email protected]>

> @Vladimir - what does Scalaz do?
>
> On Thu, Oct 20, 2011 at 5:59 PM, Vladimir Ivanov <[email protected]>
> wrote:
> > Oops,
> >
> > Thanks for the fix Ethan!
> >
> > Vladimir
> >
> > 2011/10/20 Apache Jenkins Server <[email protected]>
> >
> >> See <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/745/changes
> >> >
> >>
> >> Changes:
> >>
> >> [lester] Extracted Scalaz version number to val
> >>
> >> [lester] Introduced Scalaz library
> >>
> >> ------------------------------------------
> >> <===[JENKINS REMOTING CAPACITY]===>channel started
> >>   Executing Maven:  -B -f <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/pom.xml>
> >> clean install
> >> [INFO] Scanning for projects...
> >> [INFO]
> >> ------------------------------------------------------------------------
> >> [INFO] Building Apache Enterprise Social Messaging Environment (ESME)
> >> [INFO]    task-segment: [clean, install]
> >> [INFO]
> >> ------------------------------------------------------------------------
> >> [INFO] artifact org.apache.rat:apache-rat-plugin: checking for updates
> from
> >> scala-tools.org
> >> [INFO] artifact org.mortbay.jetty:maven-jetty-plugin: checking for
> updates
> >> from scala-tools.org
> >> [INFO] artifact net.sf.alchim:yuicompressor-maven-plugin: checking for
> >> updates from scala-tools.org
> >> [INFO] artifact org.apache.maven.plugins:maven-eclipse-plugin: checking
> for
> >> updates from scala-tools.org
> >> [INFO] snapshot
> org.apache.maven.plugins:maven-eclipse-plugin:2.9-SNAPSHOT:
> >> checking for updates from scala-tools.org
> >> [INFO] [clean:clean {execution: default-clean}]
> >> [INFO] Deleting directory <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/target>
> >> [INFO] [resources:resources {execution: default-resources}]
> >> [WARNING] Using platform encoding (ANSI_X3.4-1968 actually) to copy
> >> filtered resources, i.e. build is platform dependent!
> >> [INFO] Copying 13 resources
> >> [INFO] [yuicompressor:compress {execution: default}]
> >> [INFO] nb warnings: 0, nb errors: 0
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/scalaz/scalaz-core_2.9.1/6.0.3/scalaz-core_2.9.1-6.0.3.pom
> >> [INFO] Unable to find resource 'org.scalaz:scalaz-core_2.9.1:pom:6.0.3'
> in
> >> repository Base (http://repo2.maven.org/maven2/)
> >> Downloading:
> >>
> http://scala-tools.org/repo-releases/org/scalaz/scalaz-core_2.9.1/6.0.3/scalaz-core_2.9.1-6.0.3.pom
> >> 1K downloaded  (scalaz-core_2.9.1-6.0.3.pom)
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-server/7.3.1.v20110307/jetty-server-7.3.1.v20110307.pom
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-project/7.3.1.v20110307/jetty-project-7.3.1.v20110307.pom
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-continuation/7.3.1.v20110307/jetty-continuation-7.3.1.v20110307.pom
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-http/7.3.1.v20110307/jetty-http-7.3.1.v20110307.pom
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-io/7.3.1.v20110307/jetty-io-7.3.1.v20110307.pom
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-util/7.3.1.v20110307/jetty-util-7.3.1.v20110307.pom
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-servlet/7.3.1.v20110307/jetty-servlet-7.3.1.v20110307.pom
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-security/7.3.1.v20110307/jetty-security-7.3.1.v20110307.pom
> >>
> >> [INFO] artifact org.mortbay.jetty:jetty: checking for updates from Base
> >> [INFO] artifact org.mortbay.jetty:jetty: checking for updates from
> >> scala-tools.org
> >> [INFO] artifact org.mortbay.jetty:jetty: checking for updates from
> >> scala-tools.org.snapshots
> >> [INFO] artifact org.mortbay.jetty:jetty: checking for updates from
> >> compass-project.org
> >> [INFO] artifact org.mortbay.jetty:jetty: checking for updates from
> >> com.twitter
> >> [INFO] artifact org.mortbay.jetty:jetty: checking for updates from
> Apache
> >> Repo
> >> [INFO] artifact org.mortbay.jetty:jetty: checking for updates from
> central
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/scalaz/scalaz-core_2.9.1/6.0.3/scalaz-core_2.9.1-6.0.3.jar
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-server/7.3.1.v20110307/jetty-server-7.3.1.v20110307.jar
> >> [INFO] Unable to find resource 'org.scalaz:scalaz-core_2.9.1:jar:6.0.3'
> in
> >> repository Base (http://repo2.maven.org/maven2/)
> >> Downloading:
> >>
> http://scala-tools.org/repo-releases/org/scalaz/scalaz-core_2.9.1/6.0.3/scalaz-core_2.9.1-6.0.3.jar
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-continuation/7.3.1.v20110307/jetty-continuation-7.3.1.v20110307.jar
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-http/7.3.1.v20110307/jetty-http-7.3.1.v20110307.jar
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-io/7.3.1.v20110307/jetty-io-7.3.1.v20110307.jar
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-util/7.3.1.v20110307/jetty-util-7.3.1.v20110307.jar
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-servlet/7.3.1.v20110307/jetty-servlet-7.3.1.v20110307.jar
> >>
> >> Downloading:
> >>
> http://repo2.maven.org/maven2//org/eclipse/jetty/jetty-security/7.3.1.v20110307/jetty-security-7.3.1.v20110307.jar
> >>
> >> 4251K downloaded  (scalaz-core_2.9.1-6.0.3.jar)
> >> [INFO] [compiler:compile {execution: default-compile}]
> >> [INFO] Nothing to compile - all classes are up to date
> >> [INFO] [scala:compile {execution: default}]
> >> [INFO] suggestion: remove the scalaVersion from pom.xml
> >> [ERROR] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala
> >> >
> >> [ERROR] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/../scala
> >> >
> >> [INFO] Compiling 66 source files to <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/target/classes
> >> >
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:92:
> >> error: reference to Logger is ambiguous;
> >> [WARNING] it is imported twice in the same scope by
> >> [WARNING] import scalaz._
> >> [WARNING] and import common._
> >> [WARNING] object UserAuth extends UserAuth with
> >> LongKeyedMetaMapper[UserAuth] with Logger {
> >> [WARNING]
> >>        ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:111:
> >> error: reference to Logger is ambiguous;
> >> [WARNING] it is imported twice in the same scope by
> >> [WARNING] import scalaz._
> >> [WARNING] and import common._
> >> [WARNING] trait AuthModule extends Logger {
> >> [WARNING]                          ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:93:
> >> error: reference to Index is ambiguous;
> >> [WARNING] it is imported twice in the same scope by
> >> [WARNING] import scalaz._
> >> [WARNING] and import mapper._
> >> [WARNING]   override def dbIndexes = Index(authType, authKey) ::
> >> super.dbIndexes
> >> [WARNING]                            ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:106:
> >> error: reference to Empty is ambiguous;
> >> [WARNING] it is imported twice in the same scope by
> >> [WARNING] import scalaz._
> >> [WARNING] and import common._
> >> [WARNING]   private var defAuth: Box[AuthModule] = Empty
> >> [WARNING]                                          ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:113:
> >> error: reference to Empty is ambiguous;
> >> [WARNING] it is imported twice in the same scope by
> >> [WARNING] import scalaz._
> >> [WARNING] and import common._
> >> [WARNING]   def signupPresentation: Box[NodeSeq] = Empty
> >> [WARNING]                                          ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:131:
> >> error: reference to Empty is ambiguous;
> >> [WARNING] it is imported twice in the same scope by
> >> [WARNING] import scalaz._
> >> [WARNING] and import common._
> >> [WARNING]       case _ => Empty
> >> [WARNING]                 ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:302:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server host: %s".format(ldapSrvHost))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:304:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server port: %s".format(ldapSrvPort))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:306:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server base: %s".format(ldapSrvBase))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:308:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server username: %s".format(ldapSrvUsrName))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:310:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server password: %s".format(ldapSrvPwd))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:312:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server authentication type:
> >> %s".format(ldapSrvAuthType))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:314:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server referral: %s".format(ldapSrvReferral))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:316:
> >> error: not found: value debug
> >> [WARNING]     debug("LDAP server initial context factory class:
> >> %s".format(ldapSrvCtxFactory))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:337:
> >> error: not found: value debug
> >> [WARNING]           debug("Attribute name: '%s', has following
> >> values:".format(attribute.getID()))
> >> [WARNING]           ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:340:
> >> error: not found: value debug
> >> [WARNING]             debug("Attribute value:
> >> '%s'".format(attribute.get(i)))
> >> [WARNING]             ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:352:
> >> error: not found: value debug
> >> [WARNING]      debug("LDAP base: %s".format(base))
> >> [WARNING]      ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:362:
> >> error: not found: value debug
> >> [WARNING]     debug("Name with prefix: '%s'".format(nameWithPrefix))
> >> [WARNING]     ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:355:
> >> error: not found: value debug
> >> [WARNING]      debug("Distinguished name: %s".format(dn))
> >> [WARNING]      ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:377:
> >> error: reference to Empty is ambiguous;
> >> [WARNING] it is imported twice in the same scope by
> >> [WARNING] import scalaz._
> >> [WARNING] and import common._
> >> [WARNING]   def loginPresentation: Box[NodeSeq] = Empty
> >> [WARNING]                                         ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:395:
> >> error: not found: value debug
> >> [WARNING]             debug("Username: '%s'".format(username))
> >> [WARNING]             ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:478:
> >> error: not found: value debug
> >> [WARNING] Error occurred in an application involving default arguments.
> >> [WARNING]               debug("User: '%s' has been
> >> found".format(user.niceName))
> >> [WARNING]               ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:505:
> >> error: not found: value debug
> >> [WARNING]       debug("'uniqueMember' attribute value:
> >> '%s'".format(uniqueMember))
> >> [WARNING]       ^
> >> [WARNING] <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/src/main/scala/org/apache/esme/model/UserAuth.scala
> >:511:
> >> error: not found: value debug
> >> [WARNING]     debug("No roles have been found")
> >> [WARNING]     ^
> >> [WARNING] 24 errors found
> >> [JENKINS] Archiving <
> >>
> https://builds.apache.org/job/ESME/org.apache.esme$esme-server/ws/pom.xml>
> >> to
> >>
> /home/hudson/hudson/jobs/ESME/modules/org.apache.esme$esme-server/builds/2011-10-20_12-11-03/archive/org.apache.esme/esme-server/apache-esme-1.4/esme-server-apache-esme-1.4.pom
> >> [INFO]
> >> ------------------------------------------------------------------------
> >> [ERROR] BUILD FAILURE
> >> [INFO]
> >> ------------------------------------------------------------------------
> >> [INFO] command line returned non-zero value:1
> >> [INFO]
> >> ------------------------------------------------------------------------
> >> [INFO] For more information, run Maven with the -e switch
> >> [INFO]
> >> ------------------------------------------------------------------------
> >> [INFO] Total time: 50 seconds
> >> [INFO] Finished at: Thu Oct 20 12:12:32 UTC 2011
> >> [INFO] Final Memory: 36M/296M
> >> [INFO]
> >> ------------------------------------------------------------------------
> >> Waiting for Jenkins to finish collecting data
> >>
> >>
> >
> >
> > --
> > Best Regards,
> > Vladimir Ivanov
> >
>



-- 
Best Regards,
Vladimir Ivanov

Reply via email to