41 Commits

Author SHA1 Message Date
Bob Polis
7a6f9df82f more readable syntax error construction 2020-09-22 13:41:23 +02:00
Bob Polis
0e735ce7a8 moved headers around a bit 2020-09-22 13:38:17 +02:00
Bob Polis
d1c4106bba renamed _stack to _values, to make a clearer distinction between value and call stacks 2020-09-22 13:13:50 +02:00
Bob Polis
6fe4894c70 removed unnecessary extra initialisation 2020-09-22 11:02:41 +02:00
Bob Polis
184cab5205 improved first pass by using prog vector size instead of pc; added pc offset vector clear to reset 2020-09-22 10:51:20 +02:00
Bob Polis
27ad2a900c changed all prog indices to size_t; added explanatory comments to ivars 2020-09-22 10:50:07 +02:00
Bob Polis
ea525575ab expanded syntax error test by adding labels and comments 2020-09-21 16:38:32 +02:00
Bob Polis
2689faa67c fixed line numbers for syntax errors by considering removed source lines: labels, comments 2020-09-21 16:37:40 +02:00
Bob Polis
eeeaf894e0 moved comment parsing to first pass, to save program space 2020-09-21 12:41:29 +02:00
Bob Polis
9c4bd366b6 added catch handler for syntax error when processing file args, for a clear error message with line number included 2020-09-21 12:26:32 +02:00
Bob Polis
372bc976a0 improved syntax_error to hold line number as well 2020-09-21 12:25:40 +02:00
Bob Polis
27b798a83e added test for improved syntax error 2020-09-21 12:25:09 +02:00
Bob Polis
a78a2ebff2 removed empty line 2020-09-21 11:49:49 +02:00
Bob Polis
a9b707599f moved curl requester to no args section; when called with file arg will now execute that local file 2020-09-21 10:46:31 +02:00
Bob Polis
49626f9925 added recognition of # at start of line as comment desginator 2020-09-21 10:45:49 +02:00
Bob Polis
98602abb9e moved test scripts to new tests dir and made them executable 2020-09-21 10:45:06 +02:00
Bob Polis
749ae0faa7 added code to test inp and err instructions 2020-09-21 10:17:41 +02:00
Bob Polis
b46fae13d7 added inp and err instructions 2020-09-21 10:17:16 +02:00
Bob Polis
c41883c11a removed comment 2020-09-21 10:16:36 +02:00
Bob Polis
7dfa8123a9 simplified gcd.txt by reordering stack stuff 2020-09-14 09:23:40 +02:00
91d6d59c1b added "out" instruction; fixed comparison bugs by converting values to int first 2020-09-13 16:55:02 +02:00
bd026a21d5 added slicer.txt with slice function 2020-09-13 16:54:10 +02:00
Bob Polis
a5c8ddae35 delegated all RAII for curl handle to unique_ptr 2020-09-12 19:34:32 +02:00
Bob Polis
159feb0dac added lcm function 2020-09-12 18:31:58 +02:00
Bob Polis
ce44657a98 renamed some labels to make combining with other functions easier (global label names!) 2020-09-11 12:59:18 +02:00
Bob Polis
edb61d1b09 added test file; added index file to prevent directory listing by web server 2020-09-10 15:28:12 +02:00
Bob Polis
c4ade5ee09 changed to use start.txt as default, to be overridden by argv[1] 2020-09-09 18:29:17 +02:00
Bob Polis
79715ad9df added function test with gcd calculation 2020-09-09 12:35:32 +02:00
Bob Polis
41c83877a7 fixed label position calculation 2020-09-09 11:52:01 +02:00
Bob Polis
344f26b05f added 2 code files; added enl instruction; completed main to do the right thing 2020-09-07 18:50:09 +02:00
Bob Polis
b0a3637b1d implemented interpreter; setup code dir; added code sync to Makefile 2020-09-07 11:40:58 +02:00
df283d562d partial start of implementation for interpreter 2020-09-06 12:57:55 +02:00
00d0eac893 partial start of implementation for interpreter 2020-09-06 12:57:28 +02:00
431367cb40 added .gitignore for built executable 2020-09-05 14:40:54 +02:00
Bob Polis
b102dfee4b minor improvements 2020-09-02 11:25:13 +02:00
Bob Polis
b9df8cdb02 refactored into a proper RAII class for a curl handle 2020-09-02 10:59:31 +02:00
Bob Polis
f4f3b5a32f added header for good measure 2020-09-02 10:02:50 +02:00
Bob Polis
c155a70fad minor code formatting change 2020-09-02 09:57:45 +02:00
Bob Polis
762f58edd0 removed unnecessary includes 2020-09-02 09:57:21 +02:00
Bob Polis
d38251fe66 refactored curl code into new helper class 2020-09-02 09:53:22 +02:00
Bob Polis
efaf6124e5 first commit 2020-09-01 16:12:41 +02:00