对HashTable的性能问题感到好奇
我读到 Haskell 中的哈希表存在性能问题(在 Haskell-Cafe< /a> 于 2006 年和 飞蛙咨询公司2009 年的博客),而且由于我喜欢 Haskell,所以它让我…
为什么 GHCi 无法解析 [[]] 类型?
为什么 Haskell 无法解析 [[]](列表的列表)类型? 为什么不简单地 * -> *,因为我可以给它一个像 Int 这样的类型,并得到 [[Int]],这是一种 *.…
在哪里可以找到所有 GHC 扩展的列表
我想使用 {-# LANGUAGE OverloadedStrings #-} 但我忘记了它是如何调用的。这种东西是无法通过 hoogle 找到的,而且使用 google* 也需要一些时间才能…
Haskell:立即从控制台读取输入字符,而不是在换行之后
我已经尝试过这个: main = do hSetBuffering stdin NoBuffering c <- getChar 但它会等到按下回车键,这不是我想要的。我想在用户按下该字符后立即…
在 Haskell 中,如果绑定“隐藏现有绑定”,这意味着什么?
当我编译时,我收到来自 GHC 的警告: 警告:“pats”的此绑定隐藏了“match_ignore_ancs”定义中的现有绑定 这是函数: match_ignore_ancs (TextPat …
为什么 s ++大s不会导致堆栈溢出吗?
我想知道为什么 Prelude> head $ reverse $ [1..10000000] ++ [99] 99 不会导致堆栈溢出错误。前奏中的 ++ 看起来很简单并且非尾递归: (++) :: [a]…
do 符号是否特定于“base:GHC.Base.Monad”?
标准 Monad 类有缺陷并且它实际上应该扩展 Functor 或 Pointed 的想法正在流传。 我不一定声称这是正确的做法,但假设有人试图这样做: import Prelud…
GHC 6.12 和 MacPorts
我最近(从二进制安装程序)安装了 GHC 6.12 和 Haskell Platform 2010.1.0.1我的 Intel MacBook 运行 OS X 10.5.8,最初一切正常。 编辑:我必须从源…
Haskell (GHC) 中的列表是如何实现的?
我只是对 Haskell 中列表的一些具体实现细节感到好奇(GHC 特定的答案很好)——它们是朴素的链表,还是有任何特殊的优化?更具体地说: length 和 (!…
ghc-pkg 和 cabal 之间有什么关系?
关于如何在 Haskell 中创建、安装和使用包, ghc-pkg 和 cabal? 它们的作用是什么——什么时候你会使用其中一个,而不是另一个,或者两者都使用? 它…
使用 GHC,在用户空间安装带有 GMP 的 cabal
我一直在尝试在未安装 GNU 多精度包 (GMP) 的系统上的用户空间中安装 Haskell Platform 和安装在 Linux 上的 cabal-install 。 我设法通过设置 LB_LIB…
Haskell 中的 CPP 扩展和多行文字
是否可以在包含多行字符串文字的 Haskell 代码上使用 CPP 扩展? Haskell 还有其他条件编译技术吗? 例如,让我们看一下这段代码: -- If the next li…
使用 putStr 和 getLine 的 IO 操作顺序错误
我有以下代码: main = do putStr "Test input : " content <- getLine putStrLn content 当我运行它(使用 runhaskell)或编译它(ghc 6.10.4)时…