Commit Graph

50 Commits

Author SHA1 Message Date
Qi Xiao
a16d4e8766 Support multi-level module.
This fixes #249.
2016-10-11 00:07:57 +08:00
Qi Xiao
8411fcfa29 In "use", make namespace before evaluating source.
This fixes #229.
2016-10-09 22:52:02 +08:00
Qi Xiao
e42d700d39 Fix the completion for "$@". 2016-09-15 13:33:16 +02:00
Qi Xiao
6f7f13f1f0 Fix broken test. 2016-09-10 00:54:18 +02:00
Qi Xiao
c0a3ab9eee Separate boolean return value and exception.
This fixes #189.
2016-07-08 01:03:34 +02:00
Qi Xiao
eae9cf0704 Teach completers and stylists of external modules.
This fixes #110.
2016-03-21 00:55:34 +01:00
Qi Xiao
a9d5672fad Export eval.ParseVariable. 2016-03-21 00:35:21 +01:00
Qi Xiao
4c938c7393 Support positional variables like $0 and $-1.
This fixes #159.
2016-03-10 20:42:32 +01:00
Qi Xiao
9f4a6413c1 Support variadic assignment.
This fixes #84.
2016-02-26 01:10:16 +01:00
Qi Xiao
519760107f eval: Fix go:generate line. 2016-02-22 00:06:25 +01:00
Qi Xiao
7839884b13 Autoload modules.
This fixes #135.
2016-02-21 20:10:33 +01:00
Qi Xiao
169b9917e3 Refine evaler's error reporting. 2016-02-20 00:48:13 +01:00
Qi Xiao
2b1b57f0aa Refine compiler's error reporting. 2016-02-19 21:16:23 +01:00
Qi Xiao
be3b938bcf The compiler no longer takes name and source. 2016-02-19 17:33:55 +01:00
Qi Xiao
ecaf1b73f9 Fix loading of external modules. 2016-02-16 23:24:09 +01:00
Qi Xiao
c37a51c2ed Implement the use builtin.
This addresses #135.
2016-02-16 23:15:12 +01:00
Qi Xiao
c19a48ea8a Support defining recursive functions with fn. 2016-02-16 14:49:22 +01:00
Qi Xiao
34fddcd100 Expose editor builtins via a le module. 2016-02-12 00:43:41 +01:00
Qi Xiao
ae041b7dbf eval: evalCtx -> EvalCtx 2016-02-12 00:30:36 +01:00
Qi Xiao
6f5babd294 eval: More exports. 2016-02-08 20:30:00 +01:00
Qi Xiao
8125e2f9e6 golint fixes. 2016-02-07 23:23:16 +01:00
Qi Xiao
087bddcc31 Implement splicing with $@varname.
This fixes #81.
2016-02-07 03:12:54 +01:00
Qi Xiao
6c73af7b47 eval: support setting list and map elements 2016-02-01 11:42:28 +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
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
e795b6de40 eval: internalVariable -> ptrVariable 2016-01-29 13:59:00 +01:00
Qi Xiao
44695ad145 eval: expose most Value funcs 2016-01-29 13:55:14 +01:00
Qi Xiao
3b57424e6f eval: expose Exitus 2016-01-29 03:51:47 +00:00
Qi Xiao
b0568168e8 exitus cleanup 2016-01-28 23:39:20 +01:00
Qi Xiao
8c849af711 prefix for functions is now "&". 2016-01-27 21:24:17 +00:00
Qi Xiao
76c1c97d46 expose eval.fnPrefix; update docstring for fn 2016-01-26 17:42:37 +01:00
Qi Xiao
743185f6f3 eval: make lexical scoping less broken 2016-01-25 23:53:17 +01:00
Qi Xiao
4b2fbce4bc parse: Don't expose Node.N() 2016-01-24 19:04:15 +01:00
Qi Xiao
233a8f4b07 parse-ng -> parse 2016-01-24 18:15:21 +01:00
Qi Xiao
66d3c84fad eval: remove code related to static type 2016-01-24 18:15:14 +01:00
Qi Xiao
b88b9a0793 eval: fn is back 2016-01-24 18:15:14 +01:00
Qi Xiao
1cca989a6b eval: set and del are back.
There is no `var` any more; `set` automatically creates variables in the local
scope if they do not yet exist. To force shadowing an outer variable with the
same name, use `set local:varname = value`.
2016-01-24 18:15:13 +01:00
Qi Xiao
435c6e8974 Disable builtins and failing tests; refine tests 2016-01-24 18:13:29 +01:00
Qi Xiao
aa7ca8eea1 New eval. Currently broken. 2016-01-24 18:13:20 +01:00
Cheer Xiao
55c66c743e "success" -> "ok" 2015-08-23 22:46:33 +08:00
Cheer Xiao
b4ed398564 Teach fn to capture returns 2015-07-08 12:31:40 +02:00
Cheer Xiao
f68b0eb1f9 A chunk now stops execution as soon as a failure is encountered. 2015-07-08 00:12:24 +02:00
Cheer Xiao
8794232b26 Support completion of commands 2015-07-06 17:58:51 +02:00
Cheer Xiao
6a88395a95 Work on comments of eval 2015-02-26 15:17:05 +01:00
Cheer Xiao
06b0a1d283 Fix typo, fix compilation 2015-02-26 14:57:01 +01:00
Cheer Xiao
478d7df34f Replace a comment on os.Unsetenv 2015-02-26 14:54:23 +01:00
Cheer Xiao
e92abca968 Better type check for set 2015-02-26 14:50:48 +01:00
Cheer Xiao
91af2a8e8c Don't use dashes in golang sources 2015-02-25 16:43:31 +01:00