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