summaryrefslogtreecommitdiff
path: root/test/peano.go
diff options
context:
space:
mode:
authorOndřej Surý <ondrej@sury.org>2011-01-17 12:40:45 +0100
committerOndřej Surý <ondrej@sury.org>2011-01-17 12:40:45 +0100
commit3e45412327a2654a77944249962b3652e6142299 (patch)
treebc3bf69452afa055423cbe0c5cfa8ca357df6ccf /test/peano.go
parentc533680039762cacbc37db8dc7eed074c3e497be (diff)
downloadgolang-3e45412327a2654a77944249962b3652e6142299.tar.gz
Imported Upstream version 2011.01.12upstream/2011.01.12
Diffstat (limited to 'test/peano.go')
-rw-r--r--test/peano.go13
1 files changed, 4 insertions, 9 deletions
diff --git a/test/peano.go b/test/peano.go
index 77a0d1272..f4c59d1e1 100644
--- a/test/peano.go
+++ b/test/peano.go
@@ -6,9 +6,7 @@
package main
-type Number struct {
- next *Number
-}
+type Number *Number
// -------------------------------------
@@ -26,13 +24,13 @@ func is_zero(x *Number) bool {
func add1(x *Number) *Number {
e := new(Number)
- e.next = x
+ *e = x
return e
}
func sub1(x *Number) *Number {
- return x.next
+ return *x
}
@@ -96,7 +94,7 @@ func check(x *Number, expected int) {
// -------------------------------------
// Test basic functionality
-func verify() {
+func init() {
check(zero(), 0)
check(add1(zero()), 1)
check(gen(10), 10)
@@ -121,10 +119,7 @@ func verify() {
// -------------------------------------
// Factorial
-
func main() {
-
- verify()
for i := 0; i <= 9; i++ {
print(i, "! = ", count(fact(gen(i))), "\n")
}