Commit Graph

1591 Commits

Author SHA1 Message Date
Qi Xiao
ddb7396046 Highlight compiling errors.
This fixes #64.
2016-02-05 23:25:13 +00:00
Qi Xiao
42d95df082 main.go: Fix recover() 2016-02-05 23:16:28 +00:00
Qi Xiao
5c8a8d5eec Make parse report all errors. 2016-02-06 00:08:39 +01:00
Qi Xiao
af9ca8cd14 parse: Order pprint.go top-down; expose pprint{AST,ParseTree} 2016-02-05 23:13:28 +01:00
Qi Xiao
36578d2203 parse: Reorganize parse.go in top-down order. 2016-02-05 23:04:39 +01:00
Qi Xiao
fa92057e05 eval: Remove a "hanger" test case since it no longer hangs. 2016-02-05 22:30:43 +01:00
Qi Xiao
7998ee7dd0 async_reader_test.go: Use time.Timer; cosmetics. 2016-02-05 22:28:02 +01:00
Qi Xiao
c3e908bdf4 edit: add basic test against AsyncReader 2016-02-05 22:22:23 +01:00
Qi Xiao
d82c20091b edit: Synchronize async_reader correctly.
This fixes #76.
2016-02-05 22:15:44 +01:00
Qi Xiao
be1df5ffc3 add a -debuglog flag 2016-02-05 22:12:05 +01:00
Qi Xiao
51df7b1263 main.go: reorder to top-down 2016-02-05 20:16:22 +01:00
Qi Xiao
3e0dc9c57b parse and compile argumentless lambdas 2016-02-05 01:04:52 +01:00
Qi Xiao
6a5f6bf244 indexed -> indexing 2016-02-03 15:36:12 +00:00
Qi Xiao
9551123779 edit: cosmetics 2016-02-03 13:26:51 +01:00
Qi Xiao
7d8d8fdc67 edit: fix reader deadlock 2016-02-03 13:15:11 +01:00
Qi Xiao
ff78be04db edit: fix async_reader 2016-02-03 13:14:17 +01:00
Qi Xiao
38e0df7b58 edit: improve async_reader_test 2016-02-03 02:57:06 +01:00
Qi Xiao
67c2687a07 sys.DumpStack now returns a string 2016-02-03 02:50:15 +01:00
Qi Xiao
6fcf7dba93 make async_reader_test more reliable by applying random jitters 2016-02-03 02:45:57 +01:00
Qi Xiao
d579453641 edit: add a (unreliable) test against the deadlock of async_reader 2016-02-03 02:33:57 +01:00
Qi Xiao
0372b56304 edit: add Close methods to {async_,}reader 2016-02-03 02:33:42 +01:00
Qi Xiao
2823ffb540 more elaborate signal handling 2016-02-03 02:19:09 +01:00
Qi Xiao
946fa29e9a edit: make {async_,}reader restartable; ditch "Stop" 2016-02-03 02:11:43 +01:00
Qi Xiao
1d7e8e75a9 edit: Remove reader.ctrlAck.
There is no need for it since reader.ctrl is unbuffered
2016-02-02 21:32:55 +00:00
Qi Xiao
b775b97b66 parse: reader -> parser 2016-02-02 18:39:44 +00:00
Qi Xiao
b3138a842e parse: Make spaces also separators in braced list 2016-02-02 18:24:36 +00:00
Qi Xiao
e0f3ab6ec0 Don't Open then Stat, just Stat.
This fixes #58.
2016-02-02 15:55:29 +00:00
Qi Xiao
6c73af7b47 eval: support setting list and map elements 2016-02-01 11:42:28 +01:00
Qi Xiao
eccf8c58fb eval: fix unpack and put-all to use List instead of *List 2016-02-01 11:36:33 +01:00
Qi Xiao
4715a349a4 eval: implement output redir correctly in Evaler.evalWithChanOut 2016-02-01 11:23:30 +01:00
Qi Xiao
aacb662a38 Support Value keys in Map.
The definition of Map has also been changed to make it comparable. The =
builtin now simply wraps the = operator of golang; a new builtin deepeq
compares values recursively.
2016-02-01 09:20:01 +01:00
Qi Xiao
b7726decb3 eval: remove the error from the return value of Indexer.Index 2016-02-01 08:20:57 +01:00
Qi Xiao
e0bc455b70 typo fix 2016-02-01 08:10:20 +01:00
Qi Xiao
fb4472b1cf edit: style Sep's based on the entire source text 2016-02-01 00:39:10 +01:00
Qi Xiao
9cbf1c2567 eval: support assignment 2016-01-31 20:36:14 +01:00
Qi Xiao
e2a35509f9 parse: parse assignments; consolidate Chunk.parse 2016-01-31 19:47:52 +01:00
Qi Xiao
506be658f2 parse: cleaner handling of Redir.Dest 2016-01-31 17:03:28 +01:00
Qi Xiao
3823161fab parse: fix broken parent of Redir.Dest; add test 2016-01-31 17:01:42 +01:00
Qi Xiao
c78fc6aa5b parse: addSep now infers begin itself 2016-01-31 16:51:32 +01:00
Qi Xiao
981955abee edit: attr -> style 2016-01-31 02:36:26 +01:00
Qi Xiao
f15bbaeab5 eval: Foreign interface now uses plain error 2016-01-31 02:29:46 +01:00
Qi Xiao
cf651e0ba8 eval: remove explicit Error from builtin functions 2016-01-31 02:21:46 +01:00
Qi Xiao
bd6b7f47f0 eval: remove explicit Exitus from Call 2016-01-31 02:11:10 +01:00
Qi Xiao
8d8fdb94fc eval: start the switch to using throw/catch for error handling 2016-01-31 02:00:31 +01:00
Qi Xiao
c1b7701a68 combine Error and error into an error in eval functions 2016-01-31 01:40:49 +01:00
Qi Xiao
c2507ad73b eval: make List a struct 2016-01-31 01:07:35 +01:00
Qi Xiao
8860d1ef0e eval: make Error a wrapper around error 2016-01-31 01:04:00 +01:00
Qi Xiao
82e027e435 Exitus -> Error 2016-01-30 17:11:43 +01:00
Qi Xiao
8095ba64da new "bind" builtin to modify keybinding 2016-01-30 16:47:11 +01:00
Qi Xiao
94f1991482 eval: remove exitusChOp 2016-01-30 15:12:24 +00:00