haskell

    1熱度

    3回答

    所以我有這個功能 intCMP :: Int -> Int -> Ordering intCMP a b | a == b =EQ | a < b = LT | otherwise = GT 和定義 xs = [1,2,3] 我試圖找到有關該列表的信息,但我有troouble傳球元素融入intCMP 這此列表是我想要做的 intCMP head(xs) 1

    1熱度

    1回答

    我正在努力Real World Haskell Chapter 11quickCheck代數數據類型的生成器實現。 繼書執行(這是2008年出版),我想出了以下內容: -- file: ch11/Prettify2.hs module Prettify2( Doc(..) ) where data Doc = Empty | Char Char | Text

    0熱度

    1回答

    我剛剛安裝完整的Haskell平臺從https://www.haskell.org/platform/windows.html到64位Windows 7機器上。我已經按照此頁面的第3步。 我必須安裝此版本之前卸載8.0.2,8.2.1 無論命令我用陰謀運行現在它給出了同樣的錯誤。請看下面的命令和錯誤序列。這是在一個空目錄中完成的: D:\test>cabal init dieVerbatim:

    0熱度

    2回答

    Haskell完全是關於抽象。但是由於所有抽象(多態)數據的共同表示 - 堆中的指針,抽象花費我們額外的CPU週期和額外的內存使用。有一些方法可以使抽象代碼更好地滿足高性能需求。據我所知,一種方法是專業化 - 基本上額外的代碼生成(手動或編譯器),是正確的? 讓我們假設下面所有的代碼是嚴格 如果我們有一個功能sum(這有助於編譯器進行更多的優化?): sum :: (Num a) => a ->

    9熱度

    2回答

    我在閱讀Purescript通過示例並介紹了讀者單元的部分。示例如下: createUser :: Reader Permissions (Maybe User) createUser = do permissions <- ask if hasPermission "admin" permissions then map Just newUser els

    4熱度

    2回答

    對類型變量進行參數化很好,但不能縮放。作爲可能發生的一個例子,http://oleg.fi/gists/posts/2017-04-26-indexed-poptics.html給出了一個包含9個類型變量的抽象。我一直在研究程序轉換的框架,這些程序轉換由程序設計語言進行了參數化,並且可以想象將來有幾十或幾百個參數。 所以這裏的基本問題:我有一個數據類型T,它是參數化的N類型。如何在T上編寫一個函數

    0熱度

    1回答

    我想做一個排序功能,排序3個或更少的元素的列表,但模式匹配令我困惑。 intCMP :: Int -> Int -> Ordering intCMP a b | a == b =EQ | a < b = LT | otherwise = GT sort3 :: Ord a => (a -> a -> Ordering) -> [a] -> [a] sort3 _

    1熱度

    1回答

    create來自Data.ByteString.Internal,聲明它需要Ptr Word8才能創建ByteString。我猜這就像是對字節串頭部的引用。然而,我不確定我應該用什麼來創建一個新的指針 - 我相當肯定它沒有用nullPtr正確地完成。

    0熱度

    1回答

    在Data.Word模塊中,它提供了像Word8,Word16等類型。 有沒有一種方法來實現我自己的Word類型,如Word4(有效)?

    3熱度

    1回答

    我試圖用haskell中的Parsec解析Abap語言的一個片段。 Abap中的陳述是用點分隔的。函數定義的語法是: FORM <name> <arguments>. <statements>. ENDFORM. 我將使用它作爲最小示例。 這是我在編寫haskell和解析器中的對應類型時的嘗試。除了上面描述的函數定義之外,其他所有語句都可以使用該組件。 module Main wh