Commit Graph

1402 Commits

Author SHA1 Message Date
Qi Xiao
d8702d78c5 Implement multi-error. 2016-02-07 00:47:25 +01:00
Qi Xiao
a41182a48a Parsing of ?( and []{ is now safe; quote \n with ' 2016-02-07 00:41:31 +01:00
Qi Xiao
e6bb065d4e Parsing of incomplete maps is now safe. 2016-02-07 00:10:41 +01:00
Qi Xiao
74ae20cb8e parse: Fix for last commit. 2016-02-06 23:29:38 +01:00
Qi Xiao
0ca923b38c parse: Put the cutset in parser. 2016-02-06 23:17:57 +01:00
Qi Xiao
015def2d01 Cosmetics. 2016-02-06 17:13:53 +01:00
Qi Xiao
d7bd90e89e parse: Add tests against error reporting. 2016-02-06 13:51:12 +01:00
Qi Xiao
954c75e16e parse_test.go: Top down; comments. 2016-02-06 13:43:28 +01:00
Qi Xiao
6d17c5598f Update README.md. 2016-02-06 00:49:37 +01:00
Qi Xiao
4b7746e95a Fix test cases. 2016-02-06 00:43:51 +01:00
Qi Xiao
c5c5a7ddcd Fix parsing of assignment forms and the = builtin. 2016-02-06 00:43:29 +01:00
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