haskell

    0熱度

    1回答

    對this後續問題,假設我有兩個t1和t2的某個代數數據類型的術語,並且檢查到t1和t2的構造函數是相同的。也就是說,(非正式),T1 = F(S)和t2 = G(T),我已經檢查了F = G。現在,我想計算 map f (zip S T) 假設S和T是名單參數。這個天真的代碼會要求S中的所有東西都是單一類型的,但一般情況並非如此。 在這一點上,我只是好奇,如果有辦法做到這一點。看起來像構造函

    3熱度

    2回答

    我剛剛在序言開始了,我希望能執行以下任務: 做謂語A(P,N,L)使得對所有C這是L,P(N,C)第n個元素。 基本上我想執行範圍[0..N]的地圖。 在Haskell,我最熟悉的語言,這看起來像 f p n = map(p)[0..n] (哈斯克爾不相當有謂語,所以我在這裏採取了一些自由) 或pointfree f = (.enumFromTo 0).map 而且看起來我應該能夠在Pro

    0熱度

    3回答

    我正在用Haskell處理小程序。 也許答案很簡單,但我試着得不到結果。 所以我在程序的部分之一是列表 first = [(3,3),(4,6),(7,7),(5,43),(9,9),(32,1),(43,43) ..] ,並根據該列表我要做出新的一個與元素是在()= result = [3,7,9,43, ..] 如果相等你有時間和耐心,我將不勝感激

    1熱度

    1回答

    以下進口/語言編譯指示需要 {-# language FlexibleContexts, MultiParamTypeClasses, TypeSynonymInstances, FlexibleInstances, CPP #-} import Data.String.Conversions 以下兩個功能typechecks細(*種): (++<>) :: ( Convertibl

    2熱度

    1回答

    我想在地圖內使用'head'函數。 問題是'head'函數只接受非空列表。 我有名單列表: let ll =[["dog", "cat"], ["pig", "cow"], []] 我需要遍歷目錄列表中兩次 let listOne = filter(\x -> if length x > 0) ll map(\x -> head x) listOne 我不知道我是否能一次迭代列表的列表或

    1熱度

    1回答

    我有兩個either值,例如: Either String Config -- error string or config parsed Either String Env -- error string or environment variables detected 而且我想他們的價值觀提取到這個紀錄: type App = App { config :: Config, env

    2熱度

    2回答

    我有多個數據定義,作爲一個簡單的例子: data Fruit = Apple String Bool | Cherry String String | Grape String data Vegetable = Carrot String | Onion Bool String | Tomato String String 現在我

    1熱度

    2回答

    我正在嘗試閱讀Haskell中的簡單.ini文件,以用作我的應用程序的配置。我不是Haskell的專家,所以我可能會錯過簡單的東西。 到目前爲止,我的簡化代碼如下所示 {-# LANGUAGE OverloadedStrings #-} import Data.Ini main :: IO() main = do config <- readIniFile "config.

    1熱度

    1回答

    我有一個本地創作Haskell的項目,這既產生: 二進制可執行文件, 幾個新的哈斯克爾模塊,我想發到我的其他訪問,哈斯克爾基礎,可執行文件。 後: stack build stack install 我發現: 二進制可執行文件(#1,以上)運行在任何目錄下就好了。 但是,新的Haskell模塊(上面#2)只有在我從我的項目目錄中運行時才能找到! (也就是說,對於除#1以外的任何可執行文件)。

    2熱度

    3回答

    我有一個系統,其中包含很多不同的功能。我希望用戶 能夠將數據從shell傳遞到這些函數中。如果它們傳遞的數據類型錯誤,則在執行該功能時應顯示錯誤。 數據需要以一般方式存儲爲相同類型,以便在傳遞給exec函數之前可以將其存儲在列表中。 data Data = DInt Int | DBool Bool | DChar Char ..... 有沒有一種方法可以將數據列表傳遞到像這樣的函數中? ex