Haskell是一种函数式编程语言,具有强大的静态类型,惰性求值,广泛的并行性和并发支持以及独特的抽象功能。
为什么在fmap的方法参数之后会对getArgs进行求值? main :: IO()main = do fpath
嗨,我有以下代码:设f n(xs)=如果n <0则f(n-1)(n:xs)否则xs f(-3)[] !! 1,我希望它打印-4但它不打印任何东西,并在后台保持计算。 ...
据我所知,seq a b在返回b之前评估(强制)a和b。它不能保证首先评估a。 pseq a b计算第一个,然后计算/返回b。现在考虑......
Bi的名称 - 具有一个逆变量和一个协变参数的Functor类型类
我正在寻找一个Bi-Functor的标准类型类,它有一个Contravariant参数和一个Covariant参数。打孔签名(c - > a) - >(b - > d) - > f a b ...
我想在Haskell中使用有理数字类型而不是派系类型(或者在C中使用float / double类型)我得到以下结果:8 /(3-8 / 3)= 23.999 ... 8 /(3-8 / 3) / = 24我知道Data.Ratio。但是,它支持(+)(...
我有一个quickCheck属性,它涉及为只有两个元素的和类型生成元素。显然,对于这种情况,默认的测试用例数量100太多了,所以我用过......
我需要将列表拆分为所有可能元组的列表,但我不确定如何这样做。例如:对[“cat”,“dog”,“mouse”]应该导致:[(“cat”,“dog”),(“cat”,“mouse”),(“dog”,“cat”) ),...
据说Haskell seq函数强制评估其第一个参数并返回第二个参数。它用于增加表达式评估的严格性。那以下怎么可以简单......
这段代码来自我已经解决的作业。我仍然想弄清楚我是否可以解决我的初步尝试。所以我们得到了这个树结构和foldTree函数。数据树a =叶a | ...
从这个代码打算将平衡的三元表示转换为Haskell整数:frombal3 :: String - > Integer frombal3“+”= 1 frombal3“0”= 0 frombal3“ - ”= -1 frombal3当前:...
在Haskell中使用列表时,我可以简单地将我的文件加载到ghci并输入head list或last list以获取我需要的信息。但如果我有一个列表列表,让我们说:list = [[1,2,3],[4,...
鉴于一个教堂编码数字作为CEK机器的封闭结果,如何取回数字?
我已经实现了CEK机器。鉴于此算法的闭包结果以及此闭包是Church编码数字的知识,打印数字的最佳方法是什么?使用......
当试图理解GHC程序如何在信号和异常方面起作用时,我发现了一个有趣的,如果没有关于“修复”括号的讨论。我很难理解为什么......
我在新安装的Emacs和Intero上打开了一个Haskell文件。在启动时,intero正在尝试安装隔离的GHC。即使我的项目有stack.yaml,它有system-ghc:...
我很难理解为什么这段代码来自haskell.org练习页面typechecks(并作为列表反转函数):myReverse :: [a] - > [a] myReverse xs = foldr(\ x fId empty ...
为什么这个lambda函数是模式匹配和cons运算符的解析错误?
我试图从列表列表中解析记录(从这个问题继续)。这是我的记录数据Record = Record Text Text Text Text Text Text Text Text Text derived(Show,Generic)This ...
我正在尝试从列表中创建一个树。我已经使用foldl和foldr(后面没有显示)treeFromList l |来编写函数null l =错误“列表中没有元素”|否则=折叠...
s和a是类型变量。在构造函数中,前两个参数是数据,然后是它的父项,它在图中的级别,然后是它的子项列表。数据节点s a =根|节点s a(节点s a)...
我将如何制作一个函数,使x具有从x = 0到x = 19的值范围,如果x值超过19或低于零,我怎样才能使它包裹起来:x = 20,x = 21,x = 22,x =( - 1)......