haskell 相关问题

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

如何快速检查Enum和Bounded类型的所有可能情况?

我有一个quickCheck属性,它涉及为只有两个元素的和类型生成元素。显然,对于这种情况,默认的测试用例数量100太多了,所以我用过......

回答 1 投票 1

在列表中查找对

我试图在列表中查找元素对,假设它们是列表中的唯一对,并且不超过3个相同的连续元素。我有一个功能,需要...

回答 4 投票 0

将列表拆分为可能的元组列表

我需要将列表拆分为所有可能元组的列表,但我不确定如何这样做。例如:对[“cat”,“dog”,“mouse”]应该导致:[(“cat”,“dog”),(“cat”,“mouse”),(“dog”,“cat”) ),...

回答 6 投票 24

seq如何评估Haskell中的无限列表?

据说Haskell seq函数强制评估其第一个参数并返回第二个参数。它用于增加表达式评估的严格性。那以下怎么可以简单......

回答 1 投票 3

使用foldTree的Haskell mapTree实现

这段代码来自我已经解决的作业。我仍然想弄清楚我是否可以解决我的初步尝试。所以我们得到了这个树结构和foldTree函数。数据树a =叶a | ...

回答 1 投票 1

为什么Haskell抱怨这个加号?

从这个代码打算将平衡的三元表示转换为Haskell整数:frombal3 :: String - > Integer frombal3“+”= 1 frombal3“0”= 0 frombal3“ - ”= -1 frombal3当前:...

回答 3 投票 -2

获取列表中的列表元素

在Haskell中使用列表时,我可以简单地将我的文件加载到ghci并输入head list或last list以获取我需要的信息。但如果我有一个列表列表,让我们说:list = [[1,2,3],[4,...

回答 2 投票 -1

鉴于一个教堂编码数字作为CEK机器的封闭结果,如何取回数字?

我已经实现了CEK机器。鉴于此算法的闭包结果以及此闭包是Church编码数字的知识,打印数字的最佳方法是什么?使用......

回答 1 投票 1

中断也是GHC中的异步异常吗?

当试图理解GHC程序如何在信号和异常方面起作用时,我发现了一个有趣的,如果没有关于“修复”括号的讨论。我很难理解为什么......

回答 1 投票 2

Intero总是安装隔离的GHC

我在新安装的Emacs和Intero上打开了一个Haskell文件。在启动时,intero正在尝试安装隔离的GHC。即使我的项目有stack.yaml,它有system-ghc:...

回答 1 投票 3

有4个参数的foldr?

我很难理解为什么这段代码来自haskell.org练习页面typechecks(并作为列表反转函数):myReverse :: [a] - > [a] myReverse xs = foldr(\ x fId empty ...

回答 2 投票 2

为什么这个lambda函数是模式匹配和cons运算符的解析错误?

我试图从列表列表中解析记录(从这个问题继续)。这是我的记录数据Record = Record Text Text Text Text Text Text Text Text Text derived(Show,Generic)This ...

回答 1 投票 3

使用FoldTree从列表中的树

我正在尝试从列表中创建一个树。我已经使用foldl和foldr(后面没有显示)treeFromList l |来编写函数null l =错误“列表中没有元素”|否则=折叠...

回答 1 投票 -2

“'节点'应用于太少的参数”,即使有确切的数字

s和a是类型变量。在构造函数中,前两个参数是数据,然后是它的父项,它在图中的级别,然后是它的子项列表。数据节点s a =根|节点s a(节点s a)...

回答 1 投票 0

Haskell中的模块化算法

我将如何制作一个函数,使x具有从x = 0到x = 19的值范围,如果x值超过19或低于零,我怎样才能使它包裹起来:x = 20,x = 21,x = 22,x =( - 1)......

回答 3 投票 2

如何优雅地创建可选值列表?

考虑以下函数annotate :: AST - > [MetaInfo] annotate(ArgDecl name nameReq maybeVal)= concat [[m [Name] name],如果nameReq则[m [Operator]“!”]] ...

回答 3 投票 3

是(a - > b) - >((也许是) - >(也许是b))标准库中的转换器?

我正在学习Haskell,我发现自己编写了这段代码用于家庭作业:eval :: ExprT - > Integer eval(Lit x)= x eval(Add xy)=(eval x)+(eval y)eval( Mul xy)= ...

回答 1 投票 1

如何有条件地将元素插入列表?

假设我有一个字符串列表[“你好”,“xbox”,“蓝色”]现在我想在列表中“插入”(如在创建一个新的不可变列表中)换行字符,但只有在字符结束之前在元音上,......

回答 1 投票 -1

使用原始递归添加二进制自然数

给定二进制自然数,零情况下为“两次”情况,“两次加一”情况。如何使用原始递归表示添加(仅使用函数foldBNat)? - 零| n * 2 | ...

回答 1 投票 3

当传递给返回Just x的lambda时,Haskell如何知道保留Nothing为什么?

我只是想了解为什么这不会出错:Prelude> Nothing >> =(\ x - > Just $ x + 3)Nothing如果我将lambda分解为单个步骤:Prelude> Nothing + 3

回答 1 投票 4

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