Commit graph

23 commits

Author SHA1 Message Date
62ebaf9819 Added logical operators and, not and or. Closes #3 2026-02-24 01:45:51 +00:00
70376c6529 Careful debugging of the memory leak problem. At this stage,
stack frames for interpreted (but not primitive) functions appear not to be being
reclaimed, and the oblist doesn't seem to be being fully reclaimed.
2026-02-20 19:39:19 +00:00
351ca5bd17 Work on reducing allocation leaks in read_number(). This is now improved, but not yet satisfactory. 2026-02-04 22:57:10 +00:00
e41ae1aa8b OK, big win: the oblist is now a hashmap, and it works. I have clear ideas now
about how to implement namespaces. There are probably regressions in this, but
progress nevertheless!
2026-02-03 17:20:55 +00:00
7c84cb433a Changed from using bit-shifts to using arithmetic operators. More tests fail, but... 2025-03-16 09:38:00 +00:00
70d176982b
Work on exception handling, especially around ratio arithmetic
Much simplified but will break things!
2021-07-25 17:02:28 +01:00
a640c9dff9 It works! 2019-01-28 18:46:24 +00:00
f8c20ab3b1 Still broken, but I believe we're moving in the right direction. 2019-01-24 10:12:08 +00:00
3fd322af6f Major progress, multiply now almost works
There's a premature free() somewhere, and I'm not sure why.

Print depends on divide, which is easy, but also on mod and floor (of rationals) which isn't.
2019-01-21 16:14:25 +00:00
64fc43e9fc OK, my idea that long multiplication is like long addition is wrong.
It's still broken, but it's broken because of fundamental misunderstanding which tinkering won't solve.
2019-01-20 23:34:46 +00:00
0f8bc990f2 Much investigation of bignum problems
bignum multiply is still not working, but as bignum read and bignum divide depend on it, it's the problem to hit first.
2019-01-19 16:28:15 +00:00
396e214b5f Increased maximum memory allocation 2019-01-04 11:24:05 +00:00
d9d789fdd0 Now creating the correct internal bignum representation
add_integers returns an integer which by inspection of the internal representation is correct, but the print representation is not correct.
2019-01-03 11:21:08 +00:00
4295b6e57f This isn't working, but it's VERY promising. 2019-01-01 15:04:44 +00:00
72ab4af20e Seem to have fixed the 'oblist getting lost' problem. 2018-12-31 14:43:47 +00:00
e7dffcad2c Not really making progress. 2018-12-30 19:07:07 +00:00
02fe5669d8 Complete reworking of the REPL
which is good in itself, but not what I was meant to be working on.
2018-12-30 17:56:15 +00:00
7b126ea979 Garbage collection now much better, not good
There's clearly still a lot of things getting incremented but not decremented.
2018-12-29 09:35:29 +00:00
2d5fc4a202 Upversioned, README updated 2018-12-28 22:36:26 +00:00
5a84f5e305 Fixed the eval-real test
So that it passes provided the answer is right to within one part in a million. Also worked on a solution to returning exceptions from make_stack_frame
2018-12-21 21:36:37 +00:00
637d78fb1b Much work, all I think positive, but defun still doesn't work. 2018-12-18 21:10:03 +00:00
cec32eff54 Progress, but there's something wrong with nlambdas 2018-12-13 23:20:34 +00:00
facd5ccc94 Started work on nlambda. It isn't working yet. 2018-12-13 17:08:47 +00:00