scalaz7

    1熱度

    1回答

    我想這個Applicative validation syntax例如轉換成Scalaz 7 +無形2.0 //for jupyter-scala kernel //classpath.add("org.scalaz" %% "scalaz-core" % "7.2.7") //classpath.add("com.chuusai" %% "shapeless" % "2.3.2") ca

    2熱度

    2回答

    的類型,因此在Scala中,我們有典型的鏡頭簽名參數鏡頭: case class Lens[O,V](get: O => V, set: (O,V) => O) 但正如你所看到的,只有更新,並設置相同類型的值,它不爲另一種類型設置一種類型。我想到的是更多的東西是這樣的: case class Lens[O[_],A,B](get: O[A] => A, set: (O[A],B) => O[B

    0熱度

    1回答

    有人可以解釋爲什麼我應該使用斯卡拉的NonEmptyList斯卡拉的List? 在一個不變的應用它並沒有多大意義,以創建一個空的List 所以我就應該總是在一個不變的應用程序中使用NonEmptyList? 爲什麼我會使用斯卡拉的NonEmptyList而不是斯卡拉的List除了保證列表中至少有一個元素的明顯原因?

    0熱度

    1回答

    我是很新,scalaz創建OptionT [未來,A],而我試圖找出轉換不同類型單子變壓器。 我一直在試圖將Int轉換爲OptionT[Future, Int],甚至轉換爲EitherT[Future, String, Int]。 我發現了一堆教程/ SO解釋如何使用point做到這一點的答案,但由於某種原因,我不能編譯它們。 例如,該段從here: 1.point[({ type L[x] =

    4熱度

    1回答

    我有以下解析器解析含有浮球RDD算術表達式: import scalaz._ import Scalaz._ def term2: Parser[List[\/[Float, RDD[(Int,Array[Float])]]]] = rep(factor2) def factor2: Parser[\/[Float, RDD[(Int,Array[Float])]]] = pathxml

    1熱度

    1回答

    我很好奇方法scalaz.Bind.bind的實施?謝謝 trait Bind[F[_]] extends Apply[F] { self => //// /** Equivalent to `join(map(fa)(f))`. */ def bind[A, B](fa: F[A])(f: A => F[B]): F[B] ... 我正在查看7.3.

    1熱度

    1回答

    我剛剛從eugene's blog post開始學習scalaz。我想在我的代碼使用===但它返回一個編譯錯誤 value === is not a member of object Red 這裏是我的代碼 import scalaz._ sealed trait TrafficLight case object Red extends TrafficLight case object Y

    1熱度

    1回答

    我使用scalaz堆棧溢出」 Monad.whileM_來實現功能的方式while循環,如下所示: object Main { import scalaz._ import Scalaz._ import scala.language.higherKinds case class IState(s: Int) type IStateT[A]

    3熱度

    1回答

    我正在嘗試使用Scalaz EitherT與scala.concurrent.Future。當試圖用它換理解: import scalaz._ import Scalaz._ val et1:EitherT[Future, String, Int] = EitherT(Future.successful(1.right)) val et2:EitherT[Future, String,

    3熱度

    1回答

    我最近聽說過scala中的unboxed tagged類型,當我試圖瞭解它的工作原理時,我發現這個question指出scalaz中實現的問題。其中的一個修復的後果是必須明確的拆禮物標籤類型: def bmi(mass: Double @@ Kg, height: Double @@ M): Double = Tag.unwrap(mass)/pow(Tag.unwrap(height)