10 lines
231 B
Text
10 lines
231 B
Text
|
|
def ackermann = {
|
||
|
|
def A(m, n) {
|
||
|
|
| (0, n) => n + 1
|
||
|
|
| (m, 0) when m > 0 => A(m - 1, 1)
|
||
|
|
| (m, n) when m > 0 && n > 0 => A(m - 1, A(m, n - 1))
|
||
|
|
| _ => throw Exception("invalid inputs");
|
||
|
|
}
|
||
|
|
A
|
||
|
|
}
|