Commit graph

35 commits

Author SHA1 Message Date
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
0e11adea1c Compiles, most tests break 2019-01-27 17:22:13 +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
c21a762413 Much better GC, still a few things being missed. 2018-12-29 20:34:31 +00:00
40e1f3ca64 Whitespace only changes 2018-12-29 07:40:01 +00:00
e52ccce0eb Much progress! Half the unit tests pass. 2018-12-28 15:50:37 +00:00
75abfb4050 Much better debugging, but it still doesn't work 2018-12-27 21:37:38 +00:00
3d5c27cb10 Horribly broken, may have to rethink. 2018-12-26 21:10:24 +00:00
9937f344dc Major refactoring. Major problems!
On the right path but it doesn't work yet.
2018-12-26 20:30:14 +00:00
ae8ba67ed7 Better exceptions, investigation on failure to read/print wide chars. 2018-12-25 15:32:53 +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