Commit Graph

25 Commits

Author SHA1 Message Date
Danila Fedorin ca6075e8d5 Add a new method call operator, and more.
The '.' operator now represents method calls. A function f: (a, b)->c
can be called as a.f(b), which is equivalent to f(a, b). Besides
this change, all reserved operators now have a negative precedence
(it's relative, remember?), and some function names were changed.
2018-09-13 17:05:39 -07:00
Danila Fedorin de0ad13785 Remove function call prints from interactive. 2018-08-11 22:42:36 -07:00
Danila Fedorin cf57c4a29a Remove deliberate memory leak.
It was used to test the GC.
2018-08-11 20:29:08 -07:00
Danila Fedorin 8847643c2e Merge branch 'gc' 2018-08-11 20:09:56 -07:00
Danila Fedorin f4ecb82c46 Intermediate commit before visitor refactor. 2018-08-11 18:22:18 -07:00
Danila Fedorin 0b7b49d03d Fix memory leak caused by not freeing type. 2018-08-11 00:42:15 -07:00
Danila Fedorin 450d12dc43 Add an equality function. 2018-08-10 19:21:55 -07:00
Danila Fedorin aebba42196 Use the new public functions. 2018-08-10 18:40:21 -07:00
Danila Fedorin 8192d767f2 Add macro for declaring functions. 2018-08-10 16:59:44 -07:00
Danila Fedorin 416686ca72 Add boolean logic functions and operators. 2018-08-10 16:54:53 -07:00
Danila Fedorin b1ab168907 Do not exit on absence of print function. 2018-08-10 16:15:58 -07:00
Danila Fedorin 25f5d3469b Add a boolean type. 2018-08-10 00:52:12 -07:00
Danila Fedorin a5429ae2c8 Maintain scope between lines executed. 2018-06-21 17:23:34 -07:00
Danila Fedorin 13ccea10e4 Add scope to internal functions. 2018-06-21 14:25:11 -07:00
Danila Fedorin 82747eae6a Output error codes. 2018-06-20 13:55:28 -07:00
Danila Fedorin 62dd41e634 Use the unit type correctly instead of null references. 2018-06-02 16:06:13 -07:00
Danila Fedorin 3fcdd55395 Use unit type in print function. 2018-06-02 15:37:15 -07:00
Danila Fedorin 6080c3f250 Add a function to print the result of the evaluation. 2018-06-01 23:39:23 -07:00
Danila Fedorin c2ec44d83b Create a macro for basic infix operators. 2018-06-01 15:33:45 -07:00
Danila Fedorin 5fec3bd63c Make operators simply aliases to functions. 2018-06-01 15:24:55 -07:00
Danila Fedorin 97fed0b4d1 Use new type functions and abstract reusable code. 2018-05-27 00:12:13 -07:00
Danila Fedorin 1f7294ce29 Add libabacus parameter to function calls. 2018-05-27 00:02:20 -07:00
Danila Fedorin f4de244c41 Format code. 2018-05-26 21:55:30 -07:00
Danila Fedorin a6aaa22450 Add calling operators. 2018-05-26 20:43:36 -07:00
Danila Fedorin bbe31be447 Add an interactive test target. 2018-05-23 15:41:17 -07:00