Commit Graph

16 Commits

Author SHA1 Message Date
Aryadev Chavali
8d3f4f896f stream: do not initialise file streams with a non-empty vector
Because of the not_inlined trick, a 0 initialised SBO vector is
completely valid to use if required.  Future /vec_ensure/'s will deal
with it appropriately.  So there's no need to initialise the vector
ahead of time like this.
2026-02-05 18:53:13 +00:00
Aryadev Chavali
0318dcbb65 stream: Make stream name a constant cstr
We don't deal with the memory for it anyway.
2026-02-05 18:52:47 +00:00
Aryadev Chavali
f7cfe16c67 main: Put all variable declarations at start of main to ensure decl
There is a chance that /end/ is jumped to without the FILE pointer or
stream actually being declared.  This deals with that.
2026-02-05 18:39:49 +00:00
Aryadev Chavali
3add9beb59 sv: fix possible runtime issue with NULL SV's in sv_copy 2026-02-05 06:17:52 +00:00
Aryadev Chavali
b32f420cb9 lisp: split off lisp_free as it's own function
lisp_free will do a shallow clean of any object, freeing its
associated memory.  It won't recur through any containers, nor will it
freakout if you give it something that is constant (symbols, small
integers, NIL, etc).
2026-02-05 05:39:35 +00:00
Aryadev Chavali
34d3417e74 symtable: sym_table_cleanup -> sym_table_free 2026-02-05 05:39:22 +00:00
Aryadev Chavali
118a25055c main: the beginnings of alisp.out
We've started composing the stuff we've made so far I/O wise,
initialising a stream based off user command line input.  We even
allow stdin!
2026-02-05 04:32:48 +00:00
Aryadev Chavali
e7d3bca4d7 stream: fix bug with stream_next; return the next character
It seems we'd return the previously peeked character when
stream_next'ing, when really we should be sending the updated
character.
2026-02-05 04:29:07 +00:00
Aryadev Chavali
10d6876de4 reader: implement read_err_to_cstr 2026-02-05 04:07:59 +00:00
Aryadev Chavali
1e451c57e8 stream: stream_line_col: get the line/column of stream currently
Best part is that this should only use cached data, so no chunking
required.
2026-02-05 04:04:54 +00:00
Aryadev Chavali
d14f015c38 stream: use the nonexistent errors in stream_init_* 2026-02-05 04:04:54 +00:00
Aryadev Chavali
169a165cfc stream: added stream_err_to_cstr
Simple routine, not really much to explain here.
2026-02-05 04:04:54 +00:00
Aryadev Chavali
438a494ac7 lisp: sys_cleanup -> sys_free 2026-02-05 04:04:54 +00:00
Aryadev Chavali
500661d68e LICENSE: Unlicense -> GPL Version 2 2026-02-05 04:04:54 +00:00
Aryadev Chavali
7fe8576c05 Move sys.c into lisp.c 2026-02-04 19:38:09 +00:00
Aryadev Chavali
7aae45e9c4 Move everything to src/ folder 2026-02-04 19:31:11 +00:00