Closed tiancaiamao closed 3 years ago
(defun return (x) (lambda (k) (k x))) (defun add1 (n) (return (+ n 1))) (add1 4 (lambda (x) x))
Got:
Panic: can't apply object Recovered in Eval: (add1 4 (lambda (x) x)) Error(goroutine 1 [running]: github.com/tiancaiamao/shen-go/kl.Eval.func1(0xc00022c678, 0xc0000afd98) /media/genius/OS/project/src/github.com/tiancaiamao/shen-go/kl/eval.go:144 +0xaf panic(0x846e00, 0x91d990) /home/genius/sdk/go1.16beta1/src/runtime/panic.go:965 +0x1b9 github.com/tiancaiamao/shen-go/kl.apply(0xc0000732c0) /media/genius/OS/project/src/github.com/tiancaiamao/shen-go/kl/eval.go:215 +0x1749 github.com/tiancaiamao/shen-go/kl.trampoline(0xc0000732c0, 0xc0000afd08) /media/genius/OS/project/src/github.com/tiancaiamao/shen-go/kl/eval.go:63 +0x3f github.com/tiancaiamao/shen-go/kl.evalExp(0xc0000732c0, 0xc00022c678, 0xc00000e030, 0x0) /media/genius/OS/project/src/github.com/tiancaiamao/shen-go/kl/eval.go:73 +0xbe github.com/tiancaiamao/shen-go/kl.Eval(0xc0000732c0, 0xc00022c678, 0x0) /media/genius/OS/project/src/github.com/tiancaiamao/shen-go/kl/eval.go:152 +0x85 main.repl(0xc0000732c0) /media/genius/OS/project/src/github.com/tiancaiamao/shen-go/cmd/cora/main.go:66 +0x19f main.main() /media/genius/OS/project/src/github.com/tiancaiamao/shen-go/cmd/cora/main.go:45 +0x445 )
Expected:
4 #> (add1 4 (lambda (x) x)) 5
It should work as ((add1 4) (lambda (x) x))
((add1 4) (lambda (x) x))
Got:
Expected:
It should work as
((add1 4) (lambda (x) x))