Haskell:清单的笛卡尔产品,
与 n 次计算列表的笛卡尔产品的简单方法是什么? 也就是说,如何定义函数 cartesianexp :: int-> [a] - > [[a]] 。 例如,的笛卡尔产品[1,2] …
随机数生成器函数返回Haskell中的嵌套元组
我试图理解为什么我的Haskell功能会返回一个嵌套的元组,而我似乎无法围绕问题。 我具有生成随机二进制INT的此功能 test :: StdGen -> (Int, StdGen) …
在haskell中的num实例中定义frominteger函数
我试图做到这一点,以便在控制台中以下 1 :: algebraicgraph int 将产生 顶点1 data AlgebraicGraph a = Empty | Vertex a | Overlay (AlgebraicGrap…
如何迁移此模板Haskell Lift实例到版本2.18
我有一个 lift 实例,可与Template-Haskell 2.14一起使用,但不会使用以后的版本进行编译。有人可以解释需要哪些更改? {-# LANGUAGE FlexibleInstanc…
是否可以在Haskell中定义纯虚构类型?
我将在此处以C ++为例,以显示我追随的内容。对于复杂的算术,它具有复杂和虚构类型: 这些EG具有将两个数字与类型double Imaginary相乘的属性,将具…
使用频率Haskell QuickCheck中的选择
因此,我有下面的代码,并且试图使其成为任意的实例: data MyData = I Int | B Bool instance Arbitrary MyData where arbitrary = do { frequency […
为什么是(20>)。长度 。取10 === const true
tl; dr 不是 20< dr;长度$带10 $ nather 需要任何成功地对列表进行修改(至少 [] 或或(_:_:_))“缺乏”懒惰? 或者,换句话说,为什么不是(…
为什么(a - >(b - > c))为函数定义中的第一个参数,而是类型签名中的第二个参数?
如果通过函数为函数应用程序的第一个参数是左求解的,例如: drop 2 [1,2,3,4] 结果: [3,4] 等同于 (drop 2) [1,2,3,4] 相同的结果: [3,4] 在这里我…
在输入上获取解析错误,即使我的缩进似乎正确
我是Haskell的初学者,我试图创建一些小算法来了解Haskell的语法, 我试图编写和编译QuickSort算法,但是在编译时,这给了我一个错误。 quicksort [] …
什么是范围内最大的Collatz序列的数字?
我必须使用递归编写一个程序,该程序给定n返回最小值m,1≤m≤n,该递归生成了最长的collatz步骤序列, 例如20,必须返回的数字为18,因为18和19…