Commit graph

51 commits

Author SHA1 Message Date
b6ae110f66
Hybrid assoc lists 2021-08-18 11:00:47 +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
eadb125b83
Hashmaps now *mostly* work 2021-08-16 23:23:03 +01:00
4fc9545be8
Hashmaps sort-of work but there are still bugs and one test is failing that wasn't. 2021-08-16 18:55:02 +01:00
bfd7304da1
Bother. It looks like I'd already fully implemented hashmaps...
May need to back out a whole hill of work.
2021-08-16 15:12:05 +01:00
3f3b596ff0
Added the beginnings of hashmap but does not yet compile. 2021-08-03 15:46:50 +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
d2101dbd47
Started to try to get back into this; work on exceptions and loops. 2021-07-24 08:54:55 +01:00
897d5d2670 Map in function position 2019-02-07 13:57:37 +00:00
f36436a9e1 #8: Done
I'm now of the opinion that this is done at the wrong level in the stack and needs to be redone later; but it works for now.

There's a regression in `open`, but I can't see why.
2019-02-07 09:22:44 +00:00
0687b0baeb #8: Buggy, but a lot of it works. 2019-02-06 11:17:31 +00:00
b6958bbf65 #8: compiles, but most tests fail. 2019-02-05 13:46:46 +00:00
e7ef82d23f #8: keywords as functions on associations working 2019-02-05 11:02:04 +00:00
bd4d655362 Metadata for file streams 2019-01-31 13:24:06 +00:00
f9bcac10e7 Fixed, working. 2019-01-29 22:36:20 +00:00
eb394d153f Setting up medatata works...
And the `inspect` function correctly shows it. However, the `metadata` function segfaults.
2019-01-29 18:31:30 +00:00
a640c9dff9 It works! 2019-01-28 18:46:24 +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
bf72ae379d Getting closer. WARNING: GC disabled in this commit. 2019-01-22 09:48:26 +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
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
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
a02d286ad5 Spotted a bug in car of a stream, and fixed it. 2018-12-31 16:18:39 +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
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
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
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
40e1f3ca64 Whitespace only changes 2018-12-29 07:40:01 +00:00
8231c74bae Various fixes while trying to make defun! work
It still doesn't, but I think it's VERY close!
2018-12-28 22:41:00 +00:00
570634bc43 Success! All tests pass. 2018-12-28 21:33:35 +00:00
96dad29f91 Good news: only one test failing. Bad news: it's nlambda. 2018-12-28 21:21:11 +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
9ff2f14c7d Reverse 2018-12-25 14:44:38 +00:00
9e5af35aa0 Read negative numbers 2018-12-25 13:51:15 +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