about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* always check for null in 'get' instructionsKartik K. Agaram2021-05-075-14/+51
|
* a little bit more information when lookup failsKartik K. Agaram2021-05-071-1/+31
| | | | | | Basically this should never, ever happen until I start reclaiming heap memory. I believe the only reason it happens is unprotected writes to address 0 or thereabouts.
* an often-overflowing stream when running brcircleKartik K. Agaram2021-05-072-1/+3
| | | | We really need to systematically check our trace streams.
* .Kartik K. Agaram2021-05-072-6/+8
|
* some boot-time heartbeat messagesKartik K. Agaram2021-05-072-1/+20
| | | | This will help us with some common debug scenarios.
* .Kartik K. Agaram2021-05-071-19/+19
|
* clean up all definitionsKartik K. Agaram2021-05-071-21/+20
|
* clean up chessboardKartik K. Agaram2021-05-072-11/+15
| | | | | We still benefit from some helpers here because of the unrolling and multiple calls to helpers.
* clean up read_lineKartik K. Agaram2021-05-071-9/+6
|
* clean up Bresenham line-drawingKartik K. Agaram2021-05-072-26/+54
|
* .Kartik K. Agaram2021-05-071-6/+6
|
* no, we need hline1 for fill_rectKartik K. Agaram2021-05-071-8/+10
|
* clean up hline and vlineKartik K. Agaram2021-05-071-10/+10
|
* starting to implement first macrosKartik K. Agaram2021-05-074-0/+20
| | | | | | | | | | | | | | | Another commit, another bugfix. Some snippets from my currently exploding todo list: - always investigate lookup errors immediately. Beyond the root cause, they should never happen at the moment, while we aren't reclaiming memory. we should always return a more precise error message. Usually involving null pointer checks. - on abort, print out stack trace - emit mapping of labels to addresses during survey - store a mapping of symbols somewhere in the code image - stop allocating 1KB per token; expand space for tokens as needed
* give up on nested backquotes for nowKartik K. Agaram2021-05-072-7/+82
|
* macros almost doneKartik K. Agaram2021-05-061-23/+69
| | | | Just one case left: macros within unquote.
* some more casesKartik K. Agaram2021-05-061-11/+60
|
* first passing test for macroexpandKartik K. Agaram2021-05-066-41/+249
| | | | | | | | In the process I spent a long time tracking down a stray TODO in 108write.subx that I thought would abort but didn't since the switch to baremetal. Then after I reintroduced that assertion I had to go track down a bunch of buffer sizes. Stream sizes continue to be a huge mess.
* .Kartik K. Agaram2021-05-061-1/+1
|
* more paranoia in shell/globals.muKartik K. Agaram2021-05-061-0/+48
|
* shell: macroexpand outermost callKartik K. Agaram2021-05-062-1/+65
|
* literal macrosKartik K. Agaram2021-05-061-0/+28
| | | | | | | | | | | Current plan: - some way to define macros. For now: (def f (litmac litfn () (a b) `(+ ,a , b))) - macroexpand will expand calls by passing them through the cdr (f 3 4) macroexpand: ((litfn () (a b) `(+ ,a ,b)) 3 4) => (+ 3 4) eval: (+ 3 4) => 7
* .Kartik K. Agaram2021-05-061-2/+15
|
* back to macros; switch macroexpand to operate in placeKartik K. Agaram2021-05-062-20/+9
|
* belatedly migrate stale example definitionsKartik K. Agaram2021-05-064-93/+99
| | | | | Also bare-bones syntax highlighting for .limg files. Doesn't work when .limg file is first file opened with Vim.
* .Kartik K. Agaram2021-05-061-4/+21
|
* .Kartik K. Agaram2021-05-042-0/+41
|
* .Kartik K. Agaram2021-05-042-3/+25
|
* .Kartik K. Agaram2021-05-041-1/+1
|
* shell: start implementing macrosKartik K. Agaram2021-05-042-1/+7
|
* .Kartik K. Agaram2021-05-041-6/+6
|
* shell: unquote spliceKartik K. Agaram2021-05-042-1/+121
|
* shell: unquoteKartik K. Agaram2021-05-041-2/+78
|
* shell: start evaluating backquoteKartik K. Agaram2021-05-031-0/+146
|
* .Kartik K. Agaram2021-05-031-0/+1
|
* .Kartik K. Agaram2021-05-031-63/+63
|
* .Kartik K. Agaram2021-05-031-0/+21
|
* .Kartik K. Agaram2021-05-031-1/+1
|
* reading and printing backquotes and unquotesKartik K. Agaram2021-05-033-26/+255
|
* printing quoted expressionsKartik K. Agaram2021-05-021-0/+14
|
* .Kartik K. Agaram2021-05-021-5/+5
|
* .Kartik Agaram2021-05-021-1/+44
|
* .Kartik Agaram2021-05-0121-6684/+7950
|
* tool: compute nearby colors in default paletteKartik K. Agaram2021-05-012-1/+235
|
* primitive: convert r/g/b to h/s/lKartik K. Agaram2021-05-011-0/+234
|
* primitive: read r/g/b for colorKartik K. Agaram2021-05-012-0/+329
|
* .Kartik K. Agaram2021-05-012-4/+4
| | | | Clean up menus.
* cleaner rendering of fake screens and keyboardsKartik K. Agaram2021-05-012-117/+10
| | | | | | I don't understand why a second line in the keyboard is visible now where it wasn't before. That whole aspect has unclear desires. What exactly do I want to happen on newlines?
* .Kartik K. Agaram2021-05-012-50/+64
| | | | Use sandbox background in the top line on the right.
* .Kartik K. Agaram2021-05-012-4/+4
| | | | Clean up trace colors.