haskell 相关问题

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

常量函数优化

如果我有一个有趣的函数,例如: -- 例如,`SomeRecord`可以有超过2个字段, -- 但是 20 或 30 数据 SomeRecord a b = SomeRecord { f1 :: a -> b, f2 :: a -> b -> 布尔 } 有趣::

回答 1 投票 0

Haskell/hackage 包下载史诗失败

纯粹是为了体验Hackage下载,我尝试获取一个尽可能简单的包。 这个: 似乎具有最小的依赖性(仅在基础上)。 它已经很旧了(2016 年),但最近有一些

回答 1 投票 0

是否可以在Python中正确键入提示filterM函数?

我目前正在通过用python编写monad库来自学函数式编程。我在类型提示方面遇到了麻烦。例如,Haskell 中有一个带有签名的函数 filterM...

回答 1 投票 0

Haskell 中的惰性如何与应用函子一起工作?

我不太明白函数在使用应用函子时的行为方式。 这是一个例子: ghci> (&&) <$> 只是错误 <*> 未定义 *** 例外:Prelude.undefi...

回答 2 投票 0

从 [Maybe a] 中提取第一个 Just 值

假设我有一个如下列表: [没什么,只是1,没什么,只是2] 我想获得第一个Just(非错误)值;在这种情况下,它只是 1。我唯一能想到的是: FirstJust xs = 案例过滤器

回答 3 投票 0

GHCup 和 Cabal 在已安装软件包的版本方面存在混淆(系统方面和特定的 cabal 项目)

这是我在 $HOME 的终端中运行 ghcup tui 时看到的内容: ┌──────────────────────────────────GHCup────────────── ──────────────────┐ │ 工具版本标签...

回答 1 投票 0

liftM2 如何像 Haskell 中的 S' 组合器一样工作?

我正在观看 code_report(链接)的视频,其中他提到 liftM2 的工作原理就像组合逻辑中的 S' 组合器。在他的示例中,他计算了数组的最小/最大元素并取...

回答 1 投票 0

Haskell Vector:不是科学的、工程的向量?

当我看到 Haskell 的向量时,它不是物理的线性代数向量,是吗? Java 中的向量(我记得)是一种可以动态添加的数组。但这不能用作科学载体,是......

回答 3 投票 0

构造函数类:为什么不提及内容的类型?

接下来关于 monad 转换器的问题...... 在引入构造函数类之前 [M.P.Jones 1993],Haskell 类声明: 必须有一个参数; 该参数必须是友善的 Ty...

回答 1 投票 0

如何更改基本情况以使其重新开始递归?

我正在尝试强制递归为我的项目无限循环。 这是我到目前为止的代码: putStr'::String -> IO () putStr' (a:as) = do putChar a 放置字符' ' ...

回答 1 投票 0

如何在递归方案中派生实例

我正在测试本文中的一些想法。 我想派生 Term 类型的 Eq 实例: {-# 语言 DeriveFunctor #-} 数据树 a = Branch Int [a] | Leaf Int 推导 (Eq, Func...

回答 2 投票 0

如何让 do 块提前返回?

我正在尝试使用 Haskell 抓取网页并将结果编译到一个对象中。 如果出于某种原因,我无法从页面中获取所有项目,我想停止尝试处理页面...

回答 3 投票 0

如果我们绑定两个解析器并且第二个解析器失败,字符串是否会被解析一次?

所以假设这是一个解析器: 数据解析器 a = MkParser (String -> Maybe (String, a)) runParser :: 解析器 a -> 字符串 -> 也许 a runParser (MkParser sf) inp = case sf inp of ...

回答 1 投票 0

如何用运算符解析CFG

好的,我有这个解析器和数据: 模块 SO 其中 导入数据.Char import Prelude 隐藏 (fmap, (>>=), (*>), (<*), pure) data Parser a = MkParser (String -> Maybe (String, a)) 数据...

回答 1 投票 0

Haskell 列表求和泛化

我正在使用 Python 工作,并创建了一个示例来说明如何推广常用的 sumList 函数来对任意列表列表求和: 为了对 Python 中的任意数字列表求和,我们可以这样写: def sumLi...

回答 1 投票 0

如何正确地进行递归解析?

我的代码是这样的: -- 我的解析器采用一个函数,该函数采用字符串并给出 -- 后缀和答案 数据解析器 a = MkParser (String -> Maybe (String, a)) unParser :: 解析器 -...

回答 1 投票 0

ghci 不创建新行(输出也在同一行上)

我刚刚在 WSL2 (Ubuntu) 中使用 GHCup 安装了 Haskell。但是,ghci 解释器存在问题。 当我启动 ghci 并按 Enter 时,解释器不会创建新行...

回答 1 投票 0

以向后兼容的方式扩展类型?

假设我有: 数据 X = X Int Char 任意 现在假设我想向 X 添加一个类型参数,如下所示: 数据版本 = 旧版本 |新版本 data X (phantomParam :: Version) = X Int Char 什么...

回答 1 投票 0

如何从 Haskell 中的 xml 文件中提取此文本

我有一个与此格式类似的xml文件。有多个父标签: 一个...

回答 1 投票 0

内部m在哪里量化?

@pash 写道: Haskell 中确实不存在“未量化”类型签名之类的东西。 这是一个程序: {-# 语言 Haskell98、ScopedTypeVariables、InstanceSigs #-} 模块身份...

回答 1 投票 0

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