Age | Commit message (Collapse) | Author | |
---|---|---|---|
2025-08-20 | Basic template for a system context and constructors | Aryadev Chavali | |
2025-08-19 | Conses and Vectors for my tagging scheme | Aryadev Chavali | |
Unfortunately, due to how vectors are implemented, pointers to them are unstable. We need to box them one more time (therefore adding a level of indirection) in order to stabilise them. This is annoying but currently necessary. Even if we implemented vectors as {u64, u64, ptr} instead of {u64, u64, bytes...}, we'd still have the same problem at access - two levels of indirection. I guess size and capacity checks would be one level of indirection which is nice at least, but we're already screwed at the point of doing lookup either way. | |||
2025-08-19 | Pointer tagging! | Aryadev Chavali | |
Copied from oats, just the basics required for tagging integers or symbols. | |||
2025-08-19 | Make sym_table_find return the c-string in question directly | Aryadev Chavali | |
I think we fall into a few traps if we return an sv_t directly. Think intent is clearer by returning the c-string directly. | |||
2025-08-19 | Separate out implementation to make looking at code files easier | Aryadev Chavali | |
2025-08-19 | Separated out the definitions to clean up a bit | Aryadev Chavali | |
We're going to be using C to compile our Lisp eventually, so I need to have a header file for compilation to work. We can still separate out the implementation details into separate files (then generate a shared library for usage in the link stage) but we need this header file to be singular and clean. |