haskell 相关问题

Haskell是一种函数式编程语言,具有强大的静态类型,惰性求值,广泛的并行性和并发支持以及独特的抽象功能。

多次使用参数的模式同义词中的定义发生冲突

为什么我不能定义这个模式同义词? 模式 双 a = (a,a) 错误: • “a”的定义相互矛盾 绑定时间: :1:21 :1:23 ...

回答 2 投票 0

如何命名物理上大写的 Haskell 变量

haskell中的变量名需要小写,但是 如果我们要存储 g = 9.8 和 G = 6.67300 × 10-11 (在以下场景中),如何在 .hs 文件中声明变量? 传统物理学家

回答 4 投票 0

在 Haskell 中读取常量时的字节顺序问题

当我运行代码时: 导入 Control.Applicative 导入控制.并发 导入Control.Monad 导入网络.Socket 导入系统.环境 导入系统.IO 导入数字 (showHex) 进口品质...

回答 1 投票 0

GitHub Autograder Tasty 处理写入异常

我正在 Tasty 中为 GitHub 的自动评分器对以下 Haskell 函数进行单元测试: countLetters :: IO [整数] 计数字母 = 做 putStr "第一个条目:" x <-

回答 1 投票 0

Rank 2 多态性的实际应用?

我正在讨论多态性,我正在尝试了解这种功能的实际用途。 我对Rank 2的基本理解是: 输入 MyType = ∀ a。一个 -> 一个 子函数 :: a -> a 子功能 el ...

回答 3 投票 0

如何使用解析器组合器解析一元表达式?

我正在尝试解析 Haskell 中的表达式。我已经可以使用在 dhall 项目中找到的下面的代码解析二进制表达式,但我没有正确理解它。这里是: makeOperator::

回答 1 投票 0

在 Haskell 中按行打印列表列表

我正在尝试在 Haskell 中打印列表列表。这是我之前为两个子列表成功完成的事情,但我不记得所有步骤,而且我还没有看到任意数字的东西......

回答 2 投票 0

语言中出现递归类型时是否需要折叠和展开?

语言中出现递归类型时是否需要折叠和展开?我正在阅读 Benjamin C. Pierce 所著的《类型和编程语言》一书。第 4 节“递归类型”介绍

回答 1 投票 0

为 Github 自动评分器实现 I/O Tasty-Hunit 测试

我接到的任务是为 GitHub 的自动评分器和 Tasty 的 IO 函数实现测试。函数代码如下: countLetters :: IO [整数] 计数字母 = 做 putStr...

回答 1 投票 0

关于 Monad Transformer Stack pipeline 中不同步骤的不同要求

我在之前的一个问题中接受的激光聚焦答案既令人费解又具有启发性,就在我重新打开我的 Real World Haskell (多好的一本书!)并决定额外阅读

回答 1 投票 0

未使用的合格导入导致类型匹配错误

我正在尝试构建一个基于 gitlib 的应用程序,并希望使用此类型签名编写一些附加函数:MonadGit r m => m [RefName]。和gitlib自带的listReferences一样,所以...

回答 1 投票 0

具有两个输入的 Haskell 准则

我想使用标准对具有两个输入的函数进行基准测试。然而,根据标准进行基准测试的函数似乎只能接受一个输入。我对 Haskell 还很陌生,我确信...

回答 1 投票 0

Haskell 中的列表到列表

我有一个 CSV 文件,有 2 列,每列有 32100 行。我需要导入这些数据并将每列分成一个列表列表,每个列表有一千个值。例如,让column2_data = [[...

回答 1 投票 0

在 Haskell 中根据状态过滤列表

我一直在研究 ListT 的实现,以找到一种好方法来做这样的事情: 函数列表=做 设置 <- get -- Data.Set el <- list guard $ Set.notMember el set return el...

回答 1 投票 0

也许或者单子、短路和性能

C++ 中的函数式编程,第 214 页,参考与 Haskell 的 Either 相同的预期 monad,内容如下 [...] 一旦您绑定的任何函数返回...

回答 2 投票 0

在 gitlab-ci 中添加 cabal 依赖

我有一个通常使用 nix 和 cabal 构建的项目,但是我也想将我的文档发布到 gitlab 页面上。在 gitlab CI 上运行我的 nix 是不切实际的,所以我一直在使用 cab...

回答 1 投票 0

关于选择在何处应用 monad 转换器的 monad 参数

采用 MaybeT monad 转换器: newtype MaybeT m a = MaybeT { runMaybeT :: m (Maybe a) } 我没想到它会有不同的定义,因为 Maybe 只是一个带有 (opti...

回答 1 投票 0

未找到 Haskell 调试适配器

我已按照此网站上的说明进行操作:https://www.haskell.org/get-started/ 在 VS code 中设置 haskell。当我尝试运行 haskell 项目时,我收到一条 VS Code 错误消息: haskell-调试-

回答 1 投票 0

解析任一类型的列表

我正在为逻辑公式编写一个解析器,但它无法解析 Either 类型的列表。 解析器适用于所有情况,除了将函数替换为谓词之外—— 解析 P(f(x:X)=a:A,b:...

回答 1 投票 0

我可以使用 StateT/MaybeT/forever 来消除此 IO 操作中的显式递归吗?

我有一个这样的程序, 开始 :: [Q] -> R -> IO R 开始 qs = 修复 $ ecurse r -> 做 <- select qs (r', exit) <- askQ q r (if exit then return else recurse) r' that

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.