applicative

    7熱度

    3回答

    我想了解scalaz-seven的traverseImpl實施特拉弗斯[名單]執行: def traverseImpl[F[_], A, B](l: List[A])(f: A => F[B])(implicit F: Applicative[F]) = { DList.fromList(l).foldr(F.point(List[B]())) { (a, fbs) => F.

    10熱度

    2回答

    我正在幫助朋友學習Haskell,他最近創建了類似這樣的代碼,該類型在運行時檢查並生成CPU燒錄循環。我完全被這個困惑了。 import Control.Monad import Control.Applicative main = forever putStrLn "Hello, infinity" 這不應該鍵入檢查,但是。正確的版本顯然是: main = forever $ putS

    4熱度

    2回答

    元素假設我們有兩個列表: val l1=List("a","b","c") val l2 = List("1","2","3") 我要的是:List("a1", "b2", "c3")即與L2 的一種方式的第n個元素添加L1的第n個元素實現它是: (l1 zip l2).map (c => {c._1+c._2}) 我只是想知道是否可以用Applicative實現它。我想: (l1 |@

    2熱度

    2回答

    我想寫像 mapFst :: Maybe (a, String) -> Maybe ([a], String) mapFst (a,s) = (:) <$> (a,s) <*> [other fun with same type as mapFst] (a,s) 這裏的功能,我試圖建立一個基於元組的第一個元素列表,但我不知道如何繼續。我可以做一個非元組,但不知道如何在這個構造中使用fst(如

    5熱度

    2回答

    我想一般創建haskell記錄的應用構造函數,以創建記錄的解析器。 考慮記錄: data Record = Record {i :: Int, f :: Float} 我想構造:基本類型 Record <$> pInt <*> pFloat 解析器給出: class Parseable a where getParser :: Parser a instance Parsea

    3熱度

    4回答

    這是一個後續行動,我以前question 假設我用下面的邏輯(準Java)來獲得配置參數MyParam: String myParam = null if ((myParam = getFromArgs("MyParam")) != null) return myParam if ((myParam = getFromSystemProperties("MyParam"))

    28熱度

    4回答

    我剛剛在Control.Applicative的文檔中發現了Const,但我很難直接使用Monoid來確定這個地方有用。 我錯過了什麼?

    4熱度

    1回答

    隨着formlets /消化仿函數,我想弄清楚在運行時如何有選擇地禁用字段。禁用字段將禁用字段的顯示以及驗證。 人爲的例子:假設我們的基本形式的數據類型看起來像: data Info = Info { favcolor :: String, deptId :: Int, company :: String, agree :: Boolean

    11熱度

    2回答

    在學習時Scalaz 6,我正在嘗試編寫返回驗證的類型安全的讀取程序。這裏是我的新類型: type ValidReader[S,X] = (S) => Validation[NonEmptyList[String],X] type MapReader[X] = ValidReader[Map[String,String],X] ,我有兩個函數創建地圖閱讀器的整數和字符串(*): def re

    9熱度

    1回答

    我正試圖將haskell示例轉換爲scalaz。最初的例子是這樣的: ("Answer to the ", (*)) <*> ("Ultimate Question of ", 6) <*> ("Life, the Universe, and Everything", 7) 其中,只要我能夠理解,使用this實例。 它沒有得到轉化字面上scalaz: scala> ("Answer to th