ghc

    3熱度

    1回答

    我需要讓GHC知道在類型中使用的值將與函數輸入相同。 配置定義爲: data Config = forall p s . (PortIn p, SysState s, Show p, Show s) => Config { input :: p , startSt :: s } 及其類是: class Show t => Transition

    0熱度

    1回答

    我按照程序here來安裝GHC和cabal,然後是ghc-mod。 但是,我如果通過apt-get安裝haskell-platform在這個步驟 cabal update && cabal install cabal-install Configuring cabal-install-1.24.0.2... Failed to install cabal-install-1.24.0.2 ca

    11熱度

    1回答

    我希望能夠使用GHC OverloadedStrings擴展來創建IsString實例,以便我的實例拒絕一些文字是無效的,並且使得拒絕發生在編譯時,因此編程錯誤不會將其編碼到代碼I中給我的用戶。 我有幾個使用案例,我有一個Name類型只承認某些字符串。例如 module Name (Name(getName), makeName) where import Data.Text (Text)

    14熱度

    1回答

    這可能聽起來有點可笑,但GHC無法編譯我的包含培根串,羊角麪包,黃瓜和土豆: main = putStrLn " " 我知道我可以很容易地編寫 main = putStrLn "\x1F953 \x1F950 \x1F952 \x1F954" 達到同樣的效果,但我一直認爲GHC會接受其來源中的任何unicode。因此:GHC在源文件中接受的unicode字符的實際限制是什麼? BTW:我

    10熱度

    2回答

    下面的兩個Haskell函數似乎只是根據索引變量是隱式的還是顯式的而有所不同,但性能差異是兩個數量級。 此功能需要約0.03秒來計算組播轉發表30: let mfib = (map fib [0..] !!) where fib 0 = 0 fib 1 = 1 fib x = mfib (x-1) + mfib (x-2) 此功能需要大約3秒,組播轉發表

    1熱度

    2回答

    是否有任何slab分配器或類似的東西用於爲GHC中的thunk結構分配內存?或者,它在C中使用了一些天真像malloc的東西嗎? 我猜在快速函數式編程語言中短時間內分配了thunk的數量,尤其是當多線程在其上運行時。或者,分配不是經常發生?我試圖在the GHC repository中尋找它的代碼,但找不到任何代碼。

    2熱度

    2回答

    匹配我正在寫我創建了一個數據類型的「追加」功能(這基本上是與「流」交易)。但是,這種數據類型有12種不同的構造函數,處理不同類型的「流」,例如,無限,空,固定長度,可變長度,已附加等。 輸入類型和輸出類型之間的邏輯是有點複雜但並不令人難以置信的如此。 (也許在一個簡單的代理類型包裝),然後匹配匹配內部或 對144箱子 只是模式匹配(12 對陣大類*: 我認爲兩種方法12)。我可以用通配符將特定組合

    14熱度

    1回答

    我想禁用只警告一些代碼塊。 我搜索了Google,但只查找文件範圍或全局範圍禁用方法。 使用陰謀文件或編譯 {-# OPTIONS_GHC#-} 我可以禁用特定功能的警告?

    6熱度

    1回答

    我想製作一個表達式,以便我有編譯時錯誤或URI。 [uri|http://stackoverflow.com|] 應該編譯,但 [uri|foo:/bar:\|] 不應該。 我碰到過QuasiQuotes,這顯然是針對這類問題。但是,我似乎無法從解析的URI創建Q Exp。 import Language.Haskell.TH.Quote import Language.Haskell.

    3熱度

    2回答

    要看到在Haskell GHCI函數的簽名,我有:t前綴是: Prelude> f = \x -> x+1 Prelude> :t f f :: Num a => a -> a 但輸入前綴每一次成長迅速歲。如果我離開它,我得到錯誤: Prelude> f <interactive>:5:1: error: • No instance for (Show (a0 -> a0)) ari