Commit Graph

113 Commits

Author SHA1 Message Date
Pekka Laiho
55da5fb9b6 Optimization: refactor Evaller class, remove evalAst function 2020-12-06 21:11:36 +07:00
Pekka Laiho
d1b412f913 move new-function from Seq to Collection 2020-12-06 21:05:04 +07:00
Pekka Laiho
351647944d Optimization: keep macro names in cache to avoid unnecessary macro lookups 2020-12-06 17:32:29 +07:00
Pekka Laiho
9459c07529 improve debug data, add depth to eval 2020-12-06 14:27:55 +07:00
Pekka Laiho
16f2e615b1 small optimization for evaller 2020-12-06 13:50:51 +07:00
Pekka Laiho
304e112f37 Optimization: remove extra function call from macroexpand 2020-12-06 13:32:52 +07:00
Pekka Laiho
82c8f3b52b rename pull to cons, update readme 2020-12-06 10:18:52 +07:00
Pekka Laiho
69b3778975 add built-in macros, add macros to readme 2020-12-06 09:32:45 +07:00
Pekka Laiho
496e1c2c2e support for macros in Types lib 2020-12-06 08:31:14 +07:00
Pekka Laiho
c6193b6ea2 initial support for macros 2020-12-06 08:26:27 +07:00
Pekka Laiho
f1c49009ab add shortcuts for quasiquote and unquote 2020-12-05 17:38:42 +07:00
Pekka Laiho
a2f5cdbcc0 rename splice-unquote to unquote-splice 2020-12-05 17:22:50 +07:00
Pekka Laiho
dae6fe455f add support for vectors to quasiquote 2020-12-05 17:15:15 +07:00
Pekka Laiho
25ba08a6e7 add functions ltov and vtol 2020-12-05 17:02:56 +07:00
Pekka Laiho
a6caab3ee2 concat always returns a list (because it is used by quasiquote) 2020-12-05 16:52:45 +07:00
Pekka Laiho
f4baaca01c added support for quasiquote 2020-12-05 16:47:49 +07:00
Pekka Laiho
52b7bc6934 add concat function 2020-12-05 15:26:51 +07:00
Pekka Laiho
33f4cecbbf improve error from unterminated string 2020-12-05 14:53:21 +07:00
Pekka Laiho
35ebe02e0a move functions 'sleep' and 'timer' to Core 2020-12-05 11:32:25 +07:00
Pekka Laiho
35224bce8a add support for experimental safe-mode which disables some functionality 2020-12-05 11:24:31 +07:00
Pekka Laiho
02e5176612 ability to set docstrings for functions 2020-12-05 10:39:58 +07:00
Pekka Laiho
a96b6faa93 allow function arguments as a vector (Clojure style) 2020-12-05 09:57:54 +07:00
Pekka Laiho
894bd96e06 fix bug from optimization 2020-12-05 09:48:17 +07:00
Pekka Laiho
ff1ae7b2d4 move core functions to separate file 2020-12-05 09:41:27 +07:00
Pekka Laiho
90f4d7860d add toggle for debug output 2020-12-05 08:42:56 +07:00
Pekka Laiho
1ece3649bc add support for userfuncs to meta 2020-12-05 08:13:17 +07:00
Pekka Laiho
5bb2b458b3 Optimization: skip one function call in CoreFunc::call 2020-12-03 20:23:26 +07:00
Pekka Laiho
b360e213bf Optimization: use normal for-loops in basic math functions 2020-12-03 20:09:23 +07:00
Pekka Laiho
60726f0923 Optimization: read astData to memory instead of calling get() many times in eval 2020-12-03 17:27:26 +07:00
Pekka Laiho
3c9885c7f9 Optimization: read ast length to variable in eval 2020-12-03 10:18:22 +07:00
Pekka Laiho
a86fd77b45 Optimization: read symbol name to variable in eval 2020-12-03 10:08:11 +07:00
Pekka Laiho
d6127e6821 Optimization: skip call to 'has' method when possible 2020-12-03 09:58:58 +07:00
Pekka Laiho
330fda6715 support for init file 2020-10-24 14:27:02 +07:00
Pekka Laiho
2f48754902 add special constants __FILE__ and __DIR__ 2020-10-24 12:27:28 +07:00
Pekka Laiho
c110522f3b add meta function 2020-10-24 10:02:50 +07:00
Pekka Laiho
1e33e4d146 change syntax of readline functions 2020-10-18 14:45:49 +07:00
Pekka Laiho
06acb47c72 add Regex lib 2020-10-18 14:33:27 +07:00
Pekka Laiho
c0fb53742a capitalize constants 2020-10-18 13:32:20 +07:00
Pekka Laiho
a38ef23e17 add functions: loop, coinflip, rand 2020-10-18 10:24:18 +07:00
Pekka Laiho
80a72b616b support strings for empty? 2020-10-18 09:30:21 +07:00
Pekka Laiho
d65fb5a58a add readline functions 2020-10-18 09:18:07 +07:00
Pekka Laiho
656f805a5c split function now returns a Vector instead of a List 2020-10-17 17:44:47 +07:00
Pekka Laiho
c3d99d60ef add function: filterh 2020-10-17 17:08:53 +07:00
Pekka Laiho
6475c5a253 add functions: prefix? suffix? 2020-10-17 16:11:33 +07:00
Pekka Laiho
72dc10f369 add function: exit 2020-10-17 14:47:30 +07:00
Pekka Laiho
5b2691d475 add function: timer 2020-10-17 14:36:02 +07:00
Pekka Laiho
9209b8dd92 add function: slice 2020-10-17 13:53:09 +07:00
Pekka Laiho
a7e4524470 add usort 2020-10-17 13:32:57 +07:00
Pekka Laiho
0937042e07 added function for http requests 2020-06-20 10:33:15 +07:00
Pekka Laiho
ad2aea9c70 add database functions 2020-06-19 19:09:07 +07:00