scalaz

    0熱度

    1回答

    我想解決計算數組的最大子序列和的問題,而沒有相鄰元素是該總和的一部分。 對於第i個索引處的每個元素,我檢查i-2和i-3元素的最大值,並向其中添加第i個元素以獲得最大值,以便兩個相鄰元素不包含在任何總和中。 我解決它在斯卡拉以下遞歸的方式:ideone link /** * Question: Given an array of positive numbers, find the maximu

    4熱度

    1回答

    我有這個實現scalaz驗證,它似乎是隱式scalaz.Bind不在範圍內,因此表達式不工作。 下面是代碼: import scalaz._ import Scalaz._ case class User(name: String, knowScala: Boolean, age: Int) object PublicValidationSpec extends BasicValidat

    1熱度

    1回答

    我想將我的案例類的一些常見屬性(比如說一個id和一個時間戳)用來寫這些通用代碼。下面工作正常,但我不得不重複每個案件類的所有屬性: trait HasIdAndTimestamp { val id: Int val timestamp: Long } case class Client(id: Int, timestamp: Long, name: String) exte

    6熱度

    1回答

    我正在嘗試做一個接收器來寫入流到bucketed文件的流:達到特定條件(時間,文件大小等)時,當前輸出流將關閉並且新的存儲文件被打開。 我檢查瞭如何在io對象中創建不同的接收器,但沒有太多示例。所以我試圖按照如何編寫resource和chunkW。我結束了下面的一段代碼,爲了簡單起見,現在桶只是由Int表示,但最終會是某種類型的輸出流。 val buckets: Channel[Task, Str

    6熱度

    1回答

    什麼是做到這一點的最好辦法: def reduce[A](x: Option[A], y: Option[A])(f: (A, A) => A): Option[A] = (x, y) match { case (Some(a), Some(b)) => Some(f(a, b)) case (None, None) => None case (_, Non

    2熱度

    1回答

    在Learning Scalaz方法總和上有一個類型參數。 這是否意味着類型A是Monoid類型?然而,這似乎是錯誤的,如果類型A是一個Monoid,那麼它怎麼也可以是一個整數,因爲它在示例中使用。我必須閱讀錯誤的類型參數。 類型參數的含義是什麼?我應該如何閱讀它? def sum[A: Monoid](xs: List[A]): A = { val m = implicitly[Mon

    5熱度

    1回答

    播放框架的iteratee庫定義的方法Enumerator.fromCallback,其允許基於一個未來的結果中產生的元素: http://www.playframework.com/documentation/2.2.x/Enumerators def fromCallback[E]( retriever:() => Future[Option[E]], onComplete:

    1熱度

    2回答

    在scalaZ(文件Id.scala),上下文是像下面 /** Mixed into object `Id` in the package object [[scalaz]]. */ trait IdInstances { .... } object Id extends IdInstances 那麼爲什麼不直接使用不首先確定IdInstances以下?在Id.scala中做什麼好

    3熱度

    1回答

    請看下面的例子: import scalaz._ object TaggedExample { sealed trait Test def Test[A](a: A): A @@ Test = Tag[A, Test](a) } case class TaggedAttribute(l: Long @@ TaggedExample.Test) 它將失敗,接下來有

    2熱度

    1回答

    我想實現類似如下,其中a和b都旨在Option[List[Int]]類型: val a = List(1, 2, 3).some val b = for { xs <- a el <- xs } yield el + 1 當然,這並不因爲工作它翻譯成 val b = a flatMap (xs => xs map (el => el + 1)) ,而我在尋找 val