$> ng ./test.ng
(func() (int, int))(0x68d360)
(func(int, int) interface {})(0x68d360)
ng eval panic: reflect: function created by MakeFunc using closure returned wrong type: have int for interface {}
goroutine 1 [running]:
runtime/debug.Stack(0x72, 0x0, 0x0)
/usr/lib/go/src/runtime/debug/stack.go:24 +0xa7
runtime/debug.PrintStack()
/usr/lib/go/src/runtime/debug/stack.go:16 +0x22
neugram.io/ng/eval.(*Program).Eval.func1(0xc42015e120, 0xc420187860, 0xc420187848)
/home/binet/work/gonum/src/neugram.io/ng/eval/eval.go:436 +0x204
panic(0x9ac960, 0xc4200fca80)
/usr/lib/go/src/runtime/panic.go:491 +0x283
reflect.callReflect(0xc420100940, 0xc420185f88)
/usr/lib/go/src/reflect/value.go:529 +0x7cb
reflect.makeFuncStub(0x2a, 0x42, 0x0, 0x0, 0xc420186280, 0x682285, 0xc4200f5fb0, 0xc420100940, 0xc420100ae0, 0x1000000020, ...)
/usr/lib/go/src/reflect/asm_amd64.s:17 +0x33
reflect.Value.call(0xc42013c600, 0xc420100940, 0x13, 0xa3b53a, 0x4, 0xc420110270, 0x2, 0x2, 0xc42013c600, 0xc42013c601, ...)
/usr/lib/go/src/reflect/value.go:434 +0x905
reflect.Value.Call(0xc42013c600, 0xc420100940, 0x13, 0xc420110270, 0x2, 0x2, 0x2, 0x2, 0x2)
/usr/lib/go/src/reflect/value.go:302 +0xa4
neugram.io/ng/eval.(*Program).evalExpr(0xc42015e120, 0xea60a0, 0xc420110210, 0x0, 0x0, 0x0)
/home/binet/work/gonum/src/neugram.io/ng/eval/eval.go:1337 +0x1eb8
neugram.io/ng/eval.(*Program).evalStmt(0xc42015e120, 0xea65e0, 0xc4200f8e40, 0x0, 0x0, 0x0)
/home/binet/work/gonum/src/neugram.io/ng/eval/eval.go:483 +0x128e
neugram.io/ng/eval.(*Program).Eval(0xc42015e120, 0xea65e0, 0xc4200f8e40, 0xc42014c0c0, 0x0, 0x0, 0x0, 0xea5960, 0xc4200fca90)
/home/binet/work/gonum/src/neugram.io/ng/eval/eval.go:458 +0x366
main.handleResult(0x1, 0xc4200fca60, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/binet/work/gonum/src/neugram.io/ng/ng.go:383 +0x7ff
main.runFile(0xc4200fe068, 0x9, 0xc4200fe068, 0x0)
/home/binet/work/gonum/src/neugram.io/ng/ng.go:276 +0x2a3
main.main()
/home/binet/work/gonum/src/neugram.io/ng/ng.go:120 +0x256
ng: ng eval panic: reflect: function created by MakeFunc using closure returned wrong type: have int for interface {}
interface {}