相关疑难解决方法(0)

什么是"n + k模式",为什么它们被禁止使用Haskell 2010?

在阅读维基百科在Haskell 2010上的条目时,我偶然发现了这一点:

-- using only prefix notation and n+k-patterns (no longer allowed in Haskell 2010)
factorial 0 = 1
factorial (n+1) = (*) (n+1) (factorial n)
Run Code Online (Sandbox Code Playgroud)

"n + k模式"是什么意思?我想这是第二行,但我不知道它可能有什么问题.任何人都可以解释那里的问题是什么?为什么Haskell 2010中不允许使用这些n + k模式?

haskell functional-programming

60
推荐指数
1
解决办法
8219
查看次数

haskell中的同时复发关系

是否有可能在haskell中建立一个同时递归关系的系统?我正在努力实施

a(n)=3a(n-1)+2b(n-1)

b(n) = a(n-1) + 2b(n-1)
Run Code Online (Sandbox Code Playgroud)

输入:

 a n = 3 * a (n-1) + 2 * b (n-1)
Run Code Online (Sandbox Code Playgroud)

输出:

<interactive>:103:25: error: Variable not in scope: b :: t -> a
Run Code Online (Sandbox Code Playgroud)

所以,我不能先定义一个没有定义b,但也不能定义b而不定义第一个.我不确定这样做是否可行?

PS:我在gchi工作

haskell

3
推荐指数
1
解决办法
102
查看次数

标签 统计

haskell ×2

functional-programming ×1