Commit graph

322 commits

Author SHA1 Message Date
2b22780ccf This once again does NOT compile. I've done work on macros; they don't work yet.. 2026-03-30 21:49:08 +01:00
e3f922a8bf Added character as a first class object. Stepped through a run; it all works. 2026-03-30 13:29:26 +01:00
a8b4a6e69d My monster, it not only compiles, it now runs! 2026-03-30 11:52:41 +01:00
60921be3d4 Much more progress, still doesn't compile. 2026-03-30 09:35:34 +01:00
1ce9fbda77 Still not fixed... 2026-03-29 17:25:08 +01:00
04bf001652 Progress, but it still doesn't build. I think I'm close, now... 2026-03-29 12:03:31 +01:00
00997d3c90 Down to to compilation errors. Had to reinstate individual size-class headers. 2026-03-29 11:07:30 +01:00
cae27731b7 Huge amount of work. Does not even nearly compile, but it's nearer. 2026-03-28 23:46:14 +00:00
1afb1b9fad Added work on making namespaces threadsafe. 2026-03-28 11:56:36 +00:00
154cda8da3 Added a 'state of play' update; changed the strapline in Home.md 2026-03-26 09:20:41 +00:00
57c5fe314a Things which should have been saved before the last commit. Sigh. 2026-03-26 09:03:27 +00:00
6c4be8f283 Lots more code written, and I think most of it's OK; but it doesn't compile yet. 2026-03-26 09:01:46 +00:00
604fca3c24 Got most of the new memory architecture roughed out. 2026-03-25 11:24:33 +00:00
19d6b0df29 Firming up the roadmap for the 0.1.X prototype 2026-03-24 16:53:54 +00:00
914c35ead0 Moved legacy code into archive, ready for a new rapid(?) prototype.
I may regret doing this!
2026-03-24 16:25:09 +00:00
09051a3e63 Added an essay on the design of paged space objects; started experimenting in Zig. 2026-03-23 18:47:00 +00:00
99d4794f3b Upversioned the C source tree to '0.0.7-SNAPSHOT', but proposing to start experimental
work towards 0.1.0 in separate source trees.
2026-03-19 13:59:06 +00:00
788cb48b37 Ready for release 0.0.6 (still lots of bugs). 2026-03-19 13:38:50 +00:00
a20c956288 'Fixed' issue #8; but done so by introducing a goto. Not entirely happy about this. 2026-03-18 21:35:34 +00:00
dc5cac0bd8 Work on the 'member?' bug - (issue #8) -- which turns out to be assoc/interned.
Progress has been made, but this is not fixed.
2026-03-18 20:44:18 +00:00
7d0ce67373 Fixed a segfault when the system can initialise no more pages.
Still not fixed the `member?` bug.
2026-03-18 13:27:19 +00:00
69b199fecd Found and fixed a bug I did not previously know about in println. 2026-03-18 12:22:12 +00:00
54a99b6796 Working on the member? bug. No fix, but some improvements in debug message format.
The bug is actually either in `cond` or in `cdr`, but I'm finding it extremely hard
to trace.
2026-03-18 11:53:48 +00:00
109d400f00 Added the unit test for member! 2026-03-16 15:28:09 +00:00
de50a30be2 Getting closer to tracking down the member bug, but cannot use debugger on laptop screen. 2026-03-16 15:26:12 +00:00
d42ece5711 Tactical commit while working on the bignum bug, AGAIN. 2026-03-14 21:20:23 +00:00
7f34601523 Well, that was easy! Stack limit now working. 2026-03-14 16:58:55 +00:00
d1ce893633 This is broken, but the stack limit feature works. Some debugging needed. 2026-03-13 23:42:57 +00:00
2536e76617 Added 'depth' counter to stack frames. The idea is two-fold:
1. You can limit runaway recursion by binding a symbol *max_stack_depth* in the environment
2. You can limit the number of backtrace frames printed.

However, neither of these have been implemented yet.
2026-03-02 11:10:29 +00:00
72a8bc09e0 Very minor fixes/ 2026-03-01 20:37:16 +00:00
3a1f64d7ff Well, I'm back to the same failed unit tests as the develop branch
and I *feel* that the intern code is better. But it's not without
problems and I don't think I can release at this. But it may be
ready to merge back.
2026-03-01 20:04:21 +00:00
bcb227a5f9 Still not working, but I have increasing confidence I'm on the right track. 2026-02-28 18:09:48 +00:00
a1c377bc7c Established intern bug is in getting, not setting; improved exceptions. 2026-02-28 15:15:42 +00:00
54f6f023c6 More debugging output. Getting desperate! 2026-02-28 12:24:59 +00:00
72548097cf Rewriting intern. This is badly broken, but I think on the road to better. 2026-02-28 11:21:11 +00:00
145a0fe5a7 Updated the state of play. 2026-02-27 04:03:08 +00:00
1900bca706 Very, very nearly ready for 0.0.6. Too tired to press the burron tonight. 2026-02-27 02:43:21 +00:00
b720211b7b Made the string returned by c_type null-character terminated. Fixes #6.
This is probably the wrong fix; probably I should have fixed read_string
so that it did not create null-character terminated strings, but it will
do for now. Probably will revisit.
2026-02-26 21:14:39 +00:00
f21f763f94 Work on documentation. 2026-02-26 12:12:57 +00:00
dd90b84241 Work on documentation 2026-02-26 00:06:19 +00:00
af21e506ef Whoops! Had the wrong debug tag on debug calls in equal.c 2026-02-25 22:16:14 +00:00
Simon Brooke
ffceda5edc Greatly improved performance of equal for string like things. 2026-02-25 22:10:37 +00:00
Simon Brooke
90e862cc59 let segfault bug "fixed". *But* I suspect there's memory leaking here. 2026-02-25 20:13:57 +00:00
Simon Brooke
3665326c55 Made eq and equal vararg functions, and appended ? to their names as predicates. 2026-02-25 15:24:02 +00:00
Simon Brooke
8c63272214 Fixed runaway recursion in cond. However, let is still segfaulting, and member
does not work correctly.
2026-02-25 11:17:40 +00:00
d34d891211 Fixed subtraction regression; added new subtraction unit test. 2026-02-24 09:08:41 +00:00
62ebaf9819 Added logical operators and, not and or. Closes #3 2026-02-24 01:45:51 +00:00
8df304bc60 Added the start of a new hardware essay. 2026-02-22 11:41:25 +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
8629e33f92 Added a flag, simplify to the arg list of make_ratio, so that we can
create ratios which would otherwise somplify to integers, in order to
make ratio arithmetic easier.
2026-02-15 23:47:28 +00:00