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
b97401bfde
Work on the equality of numbers. The good news: two additional unit tests pass.
...
The bad news: I'm getting segfaults.
2026-02-15 00:50:30 +00:00
08a7c4153c
Reformatted code; made paths in generated documentation relative.
2026-02-14 15:32:59 +00:00
222368bf64
Stage one clean up of test files. Some unit tests are still creating temporary files in
...
the project root directory, which is still to be fixed; and *I think* known-failing
tests which I don't intend to fix immediately should be marked in some way.
2026-02-14 14:04:41 +00:00
5e6363e6ae
Fixed the horrendous 'unbound symbol nil' bug. Also work on documentation and
...
unit tests.
2026-02-14 11:40:52 +00:00
f6d7fcea1e
Woohoo! Huge decrease in cells not cleaned up, with fixing one stupid bug.
2026-02-13 12:50:02 +00:00
004ff6737c
feature-2: allocating cells with count = 1; 7 unit tests (all bignums) fail.
2026-02-12 10:17:11 +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
36696254f2
Work on the bignum problem, ongoing.
2025-07-05 13:58:18 +01:00
7c84cb433a
Changed from using bit-shifts to using arithmetic operators. More tests fail, but...
2025-03-16 09:38:00 +00:00
bef9be4914
Merge branch 'master' into develop
2025-03-14 10:27:30 +00:00
e9f49d06a6
Added code::blocks project experimentally; also, added macro for bits
2025-03-13 18:26:38 +00:00
cbcced70b2
Just poking around and trying to remember where the problems are.
2023-04-08 11:17:18 +01:00
2b8f31d2ce
Paths of #include files
2021-09-12 15:03:18 +01:00
2c96e7c30d
Sanitising debug-printf formats, mostly.
2021-09-12 13:41:27 +01:00
b0a49fb71d
Restandardised formatting.
2021-08-17 16:37:04 +01:00
93d4bd14a0
Generally, changed working with tags as strings to as values.
...
This seems both cheaper and safer; what's not to like?
2021-08-17 16:09:00 +01:00
70d176982b
Work on exception handling, especially around ratio arithmetic
...
Much simplified but will break things!
2021-07-25 17:02:28 +01:00
baf8d6669d
OK, it is BETTER, but not FIXED.
...
(expt 2 63) goes weirdly wrong - returns T.
Internal representation is correct, so fault is in print.
2019-02-15 18:49:52 +00:00
71354d0f86
Woohoo! Actual goddamned progress! Multiply might be working!
...
Print definitely isn't!
2019-02-15 14:19:41 +00:00
23e4f0befa
A bit of work on time, but it doesn't actually work yet.
2019-02-05 09:59:05 +00:00
b15c0e8f89
Tactical commit
2019-01-28 15:02:46 +00:00
a355a28ffa
Tactical commit whilst converting to URL_FILE
2019-01-24 19:36:00 +00:00
f8c20ab3b1
Still broken, but I believe we're moving in the right direction.
2019-01-24 10:12:08 +00:00
bf72ae379d
Getting closer. WARNING: GC disabled in this commit.
2019-01-22 09:48:26 +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
22fa7314d6
Mostly fixing and standardising documentation.
2019-01-20 20:37:44 +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
46a4132823
Made it easier to run individual unit tests
2019-01-18 20:55:03 +00:00
7f93b04b72
Various refactorings around bignum arithmetic
2019-01-17 17:04:14 +00:00
d624c671cd
Major refactoring, all tests still pass
...
Bignum issues not yet folly resolved.
2019-01-05 11:42:17 +00:00
67443e1d46
OK, adding bignums works; multiplying bignums does not work.
...
There's no evidence of a bug in reading/printing, because the only way I can currently get a number big enough to trigger the supposed bug is by multiplying, which doesn't work.
2019-01-04 11:04:55 +00:00
67802a07b8
Now successfully reading/printing 2 cell bignums
...
Something is wrong with n-cell bignums, but let's make haste slowly.
2019-01-04 10:40:15 +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
6d2cf313cb
Very small fix to formatting integers.
2018-12-31 16:24:38 +00:00
e5f40032e9
Now safely detecting (but not dealing with) integer overflow.
...
Also printing and reading integers with comma separators.
2018-12-31 16:15:14 +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
47f4b4c7f7
Bug was in integer_to_string; all tests now pass.
2018-12-30 12:07:38 +00:00
61573d85d9
/all-integers-are-bignums: broken, but I don't know why.
2018-12-30 11:10:14 +00:00
489f008044
Printing of bignums basically done, not tested.
2018-12-29 23:44:28 +00:00
342f0308d3
The beginning of bignums is in place, tests still pass.
2018-12-29 22:30:07 +00:00
75abfb4050
Much better debugging, but it still doesn't work
2018-12-27 21:37:38 +00:00
6ee9f9b59a
Begun work on bignums; changed integer size to 64 bits
...
I'm fairly sure the size of a long int on my machines is 64 bit anyway, but for portability it needs to be explicit.
2018-12-25 13:18:37 +00:00
ad9b1cd7f8
Ratio arithmetic separated out into its own files.
2018-12-24 21:06:58 +00:00
a5e1d3ccd8
Reorganised source files to make navigation easier
...
All tests still pass (slightly to my surprise)
2018-12-24 19:27:04 +00:00