grol-io / grol

Go REPL Open Language
https://grol.io
Apache License 2.0
13 stars 1 forks source link

Better short circuit upon errors, info.all_ids is array of array of ids instead of key value pairs. Output the line number as part of parsing errors; Stack trace on runtime errors #184

Closed ldemailly closed 2 weeks ago

ldemailly commented 3 weeks ago
$ func level1(){1+"x"}; func level2(){level1()}; func level3(){level2()}; level3()
<err: no PLUS on left=1 right="x", stack below:>
func level1(){1+"x"}
func level2(){level1()}
func level3(){level2()}
$ level1()
<err: no PLUS on left=1 right="x" in func level1(){1+"x"}>
$ 1+"a"
<err: no PLUS on left=1 right="a">