Commit Graph

105 Commits

Author SHA1 Message Date
c1493a75c2 Rewritten previous enviroment tests to new implementation 2022-05-22 03:44:15 +02:00
6bc2a1cd38 Context aware clojures
Moved from dynamic scoping to static scoping.
2022-05-22 03:44:15 +02:00
8ac9fc5929 Explicit test for bug that caused all this trouble 2022-05-22 03:44:14 +02:00
b9d87e1456 New environment implementation
It's a failure of locating precise source of the bug that would cause `var x =
[i|i] 0` to segfault. New implementation DOES NOT have this bug.
2022-05-22 03:44:10 +02:00
d542bbe696 Small refactoring 2022-05-21 23:12:50 +02:00
c51722a607 Introduced debug builds 2022-05-21 23:11:04 +02:00
c488153805 Function call tracking tool using GDB 2022-05-21 23:00:32 +02:00
881b90506b Lambdas! 2022-05-17 16:10:56 +02:00
8025e9bd0f Separated blocks from lambdas 2022-05-17 14:09:40 +02:00
52ef323284 Colorless when NO_COLOR env variable exists
In accordance to https://no-color.org/ standard
2022-05-17 02:56:28 +02:00
d1d3421376 Removed test that are expecting wrong results 2022-05-17 02:55:09 +02:00
e7cb2de198 Evaluation support variable resolution 2022-05-17 02:49:21 +02:00
5d51d1672f Scoped variables, single namespace variables and functions 2022-05-17 02:35:51 +02:00
0f9c46dffb Parsing variable declarations 2022-05-16 16:58:31 +02:00
0b9e7e8f4a Better operator resolution mechanism 2022-05-16 15:51:38 +02:00
ccd2166231 Interpreter started! 2022-05-16 02:18:53 +02:00
14ea494686 Number parsing 2022-05-16 00:06:27 +02:00
Mateusz Piątkowski
2385e0e28c Ported Number class from pi/demo-2022-03-09 2022-05-15 23:03:09 +02:00
926a68cb84 Block parameters accepts separators; block testing 2022-05-15 22:22:26 +02:00
5bfec0e77a Block expressions 2022-05-10 16:49:36 +02:00
c5260df41c Expression sequencing 2022-05-10 16:03:30 +02:00
b4cd87eea1 Removed support for kebab-case
In live coding enviroment support for `n-1` beeing the same as `n - 1` is more
important then kebab case names
2022-05-10 15:27:06 +02:00
555a35ecc0 Function calls 2022-05-10 15:25:17 +02:00
a25719c987 Paren some expressions mate 2022-05-10 14:20:23 +02:00
f17f3dc49f Binary operator's parsing 2022-05-09 19:42:02 +02:00
655cc57cde readme - dokumentacja 2022-05-08 18:20:44 +02:00
78846d60d9 Requirements for documentation generation 2022-05-08 18:14:55 +02:00
9fd70386c5 Doxygen & Sphinx documentation tooling
This is far from real documentation both in structure and contents -
it's only a start, from which we can expand.
2022-05-08 18:02:23 +02:00
f90ea0e5d6 Basic doxyfile 2022-05-08 17:45:26 +02:00
4a5c53240c Result cannot be discarded from now 2022-05-08 15:57:31 +02:00
35a8345bc5 Better main, refactoring of error system and Result type 2022-05-08 00:03:22 +02:00
31262e74a0 Parser started: basic literal parsing
Mostly this commit implements structure to implement parsing, not actual
parsing itself
2022-05-07 20:52:09 +02:00
ead70bda5d Expression separation 2022-05-07 18:54:09 +02:00
108b7f1fee Moved implementation from header 2022-05-07 18:39:29 +02:00
03d02d608c Additional unicode tests
Coverage report is addicting
2022-05-07 18:24:37 +02:00
df1f90d827 Added expression separator tokenization
Closes #5
2022-05-07 18:20:22 +02:00
3b4c306199 Added explicit checks for dependencies of coverage raport generation 2022-05-02 22:24:01 +02:00
79d96aa935 Describe makefile options in readme 2022-05-02 22:12:29 +02:00
c8acceb329 Code coverage reporting utility 2022-05-02 22:09:11 +02:00
0eeb21c885 Comments 2022-05-02 21:23:01 +02:00
8127bcfe89 Unicode letters support 2022-05-02 20:45:06 +02:00
22eb0684c2 Solved almost all problems with lexing
The remaining one is better unicode support
2022-05-02 20:06:40 +02:00
e32710da85 Defined missing cases for lexer 2022-05-02 19:48:14 +02:00
240939c3d6 Operator lexing 2022-05-02 19:42:57 +02:00
62c2faa33a Parsing symbols 2022-05-02 19:24:29 +02:00
d6edc2e6e4 Chord literals support 2022-05-02 19:00:11 +02:00
74f4393d6a better error reporting 2022-05-02 15:13:12 +02:00
43223e685e unicode support & location in errors 2022-05-02 14:50:04 +02:00
8d0507e341 Token location tracking 2022-04-27 14:58:02 +02:00
fd4db02e8d Lexer skips whitespace 2022-04-27 14:37:21 +02:00