Haskell是一种函数式编程语言,具有强大的静态类型,惰性求值,广泛的并行性和并发支持以及独特的抽象功能。
在代码中它运行良好,如下所示 除法 :: Int -> Int -> Either String Int 除 0 = 左“0 错误” 除 a b = a / b 需要更改的代码 地图.调整(除3)“...
就 Linux 而言,我有严重的空间限制,因为我在 4GB 闪存驱动器上运行 Linux。我知道 GHC 是 Haskell 的首选编译器,但是 GHC 包有 280MB,这对于...
我正在使用https://hackage.haskell.org/package/warp-3.3.24/docs/Network-Wai-Handler-Warp.html 我对haskell并发不太了解。假设我想在不同的端口上运行两个服务器: 所以...
我是 Haskell 和函数式编程的新手。我正在尝试用 Haskell 编写 3 路合并排序算法。问题是,当我在 GHCi 中运行代码时,它只返回 *** 异常:堆栈溢出...
我在 haskell 文件中有以下导入。我正在使用阴谋集团。 导入 Network.Wai(应用程序、响应、rawPathInfo、responseFile、responseLBS、requestBody) 但是当我...
为什么 printf 不能与 haskell 中的 ccall 一起使用?
MRE: {-#语言ForeignFunctionInterface#-} 导入GHC.Ptr 进口国外 进口外国.C 导入Control.Monad foreign import ccall unsafe "fibonacci.c fib" c_fib :: Int -> Int
这是我到目前为止所拥有的: 实例 Monad Ptr 其中 回归=纯净 (>>=) (Ptr t) f = f t 抛出的错误是: • 无法将提升类型与非提升类型匹配 当
ghcup 安装:写入 ~/.ghcup/cache 目录时权限被拒绝
我正在尝试使用以下命令在 Ubuntu 上安装 ghcup: 卷曲 --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org |嘘 使用默认选项(添加到 .bashrc 之前,不安装 HLS,不安装
在尝试 cabal 沙箱时,我发现您无法在沙箱中安装不同版本的基础包和其他一些软件包,如本答案中所指出的。 我想知道哪些包是硬连线的...
如何使用 parsec 解析字符串中所有匹配的输入并丢弃其余内容? 示例:我有一个简单的数字解析器,如果我知道分隔它们的原因,我可以找到所有数字: num::Pa...
我需要以向后兼容的方式在我的仆人应用程序中引入内部化。我希望将语言代码作为可选路径段。如果第一个路径段来自已知的...
带有“<= applied to 6 arguments' in Haskell
我正在尝试编写一个函数来确定正整数列表是 a) 递增还是递减以及 b) 连续数字之间的绝对差至少为 1 或更小...
在 haskell 中创建真实频率图的惯用方法是什么(不使用 Data.Map)?
我认识到这个问题有点奇怪,毕竟 Data.Map 似乎是创建频率图的正确数据结构。然而,我想创建一个频率图,它实际上只是一个函数......
到目前为止,我一直认为 (->) 类型具有 * -> * -> * 类型。但令我困惑的是它也适用于未提升的类型(例如 Int#)。 我用 ghci 检查了类型并得到了 * ...
我有以下包含 CPP 宏的 Haskell 文件。 #define FOO( x, y ) x ++ y 富= FOO(“一”, “b” ++“c”) 条 = 1 当我就此问题致电 cpphs 时...
我正在尝试为函数类型实现类型类: {-# 语言灵活实例#-} 模块 匹配位置 导入令牌(令牌(..)) 类 匹配一个where 匹配 :: (匹配 b) => a -> [
如何从Haskell Gtk2Hs Gtk3中的Drawable或DrawWindow获取Drawable或DrawWindow
我想在 Haskell+Gtk2Hs+Gtk3 中绘制窗口的一部分。这是一款将图像从一个地图投影更改为另一个地图投影的应用程序,可以处理您在互联网上找到的所有地图,
对于函数 f :: a->b->c 是否可以编写函数 g,以便调用 (f g) 具有类型 c? 具体来说,如果我有一个数据类型 data Example = Example String String 构造函数Exa...
Text.Pandoc.Writers.Markdown 不包含 YAML,尽管设置了选项
我尝试使用 Markdown 编写器读取 Markdown 文件后重现该文件。我已经测试过了 `pandoc -s -t markdown 输入.md -o 输出.md` 生成一个带有 YAML 标头的文件。在这样的情况下...
数据人 = 人 { 名称::字符串 , 计数器 :: Int } incrementPersonCounter :: 人 -> 人 增量PersonCounter p@(Person _ c) = p { 计数器 = c + 1 } 有没有更浓缩的...