ghc

    1熱度

    1回答

    我最近打開了GHC的-Wall選項,其中包括-fwarn-name-shadowing。所提供的基本原理是: 該選項使要發射的警告每當內範圍值具有相同的名稱作爲外範圍的值,即內值陰影外一個。這可以避免印刷錯誤,變成難以發現的錯誤。 但在實踐中我還沒有抓到任何錯誤,但是我有在我的職能方面取得的變量命名了很多尷尬的解決它。縮寫示例: -- General method for parsing a pa

    5熱度

    1回答

    據https://docs.oracle.com/cd/E36784_01/html/E36873/librt-3lib.html 從歷史上看,在這個庫函數提供了很多的POSIX.1b實時擴展指定的 接口。參見 標準(5)。該功能現在駐留在libc(3LIB)中。 該庫被維護以爲 運行時和編譯環境提供向後兼容性。作爲libc.so.1上的過濾器,實現了共享對象 。新的應用程序開發不需要指定 -lr

    0熱度

    1回答

    我打開了GHC/Num.lhs文件,並能找到一些類似的代碼如下: instance Num Int where I# x + I# y = I# (x +# y) I# x - I# y = I# (x -# y) negate (I# x) = I# (negateInt# x) I# x * I# y = I# (x *# y) abs n =

    1熱度

    1回答

    我有一個名爲Showable喜歡這類型: {-# LANGUAGE ExistentialQuantification #-} {-# LANGUAGE ExplicitForAll #-} data Showable = forall a . Show a => Showable a 然後使該包裝是微不足道的功能。我只需要寫: pack :: forall a . Sho

    9熱度

    1回答

    我想使用GHC分析工具分析一些Haskell代碼。然而,我最感興趣的成本中心目前主要是由一堆我並不關心的初始化代碼。 我的代碼看起來大概,是這樣的: ​​ 在我實際的代碼中,lotsOfInitialization部分佔用的時間〜98%,所以這是很難看到任何粒度裏面是什麼interestingPart發生。 我認爲只在一個地方註釋(而不是使用-fprof-auto)就足夠了,但是我得到的報告仍然顯

    3熱度

    2回答

    我爲Core Haskell編寫了一個自定義的漂亮打印機,以便更好地研究Core的結構。這臺漂亮的打印機的要點是它需要一個CoreModule,並在輸出中包含數據構造函數,默認情況下Outputable實現看起來沒有。 這裏是我上運行的漂亮打印機模塊的代碼: module Bar2 where add :: Int -> Int -> Int add a b = a + b add2 a

    6熱度

    1回答

    在GHC 8: {-# LANGUAGE DuplicateRecordFields #-} data Dog = Dog { name::String } data Human = Human { name::String } dog = Dog "Spike" main = putStrLn $ name dog 此代碼不能編譯: Ambiguous occurrence

    3熱度

    1回答

    我試圖在Windows 10的x64上GHC 8.0.1與小集團安裝GHC-MOD: C:\WINDOWS\system32>cabal install ghc-mod Resolving dependencies... cabal: Could not resolve dependencies: trying: ghc-mod-5.5.0.0 (user goal) trying: dj

    3熱度

    1回答

    所以我有一個io-streams基於流水線我只是跑(解釋),並與-s傾倒統計: 123,680 bytes allocated in the heap 3,464 bytes copied during GC 68,912 bytes maximum residency (1 sample(s)) 13,008 bytes maximum slop

    2熱度

    1回答

    我從一個動態庫(這裏只是zlibVersion)有一些C函數,我想從cabal包中的捆綁C代碼調用。在這裏,我將它直接稱爲外部導入,並通過捆綁的C代碼間接地將其稱爲後者,即使在前者成功後,後者也會崩潰ghci。 Main.hs: module Main (main) where import Foreign.C.String (CString, peekCString) foreign i