aboutsummaryrefslogtreecommitdiff
path: root/symtable.c
AgeCommit message (Collapse)Author
2025-09-01Move implementation files into their own folderAryadev Chavali
main.c and test.c generate binary executables so they can stay in the main folder, but the rest can go into their own dedicated folder to make it look nicer
2025-08-28Still got some failures, but a basic stream implementationAryadev Chavali
Need to fix what's going on with the example in main.c using stdin.
2025-08-21Small optimisation: don't initialise a symbol table immediately on initAryadev Chavali
Why? This way, until we use symbols, the system doesn't generate the table and thus grow the memory usage by a couple kb.
2025-08-20Refactor vectors to SBO, removing inlined entirely.Aryadev Chavali
Avoid 2 levels of indirection, and having to allocate twice for small payloads, by having an inlined array on the vector directly! Beautiful and simple. Required a bit of refactoring around the board, but overall the result makes me feel happier.
2025-08-20vec -> ivecAryadev Chavali
I'm going to implement a normal stable vector instead of an inline vector so we have both options for use. I think that's smarter than just sticking to one.
2025-08-20Use sv_t instead of raw char*Aryadev Chavali
We're storing them as sv_t's anyway, we're fucked with regards to indirection. Thus, let's be nice to ourselves, and deal with the structures. We get the size of the structure for free anyway!
2025-08-20rename base.h -> alisp.hAryadev Chavali
Makes more sense when you think about including it as an external library
2025-08-19Make sym_table_find return the c-string in question directlyAryadev 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-19Separate out implementation to make looking at code files easierAryadev Chavali