Commit Graph

16 Commits

Author SHA1 Message Date
Kartik Agaram
120a740871 some primitives for emitting traces
Kinda hacky, but might scale enough for machine code.

This was really hard to debug. Single tests passed, but when I ran all
tests I got breakage because tests long before (from the 056trace layer)
were not cleaning up properly.

My instinct was to call clear-stream on Trace-stream, which was wrong
(the trace didn't have the wrong contents, it was literally a bad
object). It was also wrong in a counter-productive way: calling
clear-stream on a real Trace stream (which is the size of a page of
memory) takes a long time in emulated mode.
2019-07-01 23:09:58 -07:00
nc
676a80bf15 add test data 2019-06-29 18:03:56 -04:00
nc
0721fb5891 Implement is-label? 2019-06-29 17:59:14 -04:00
Kartik Agaram
aa09f29419 . 2019-06-28 18:24:44 -07:00
Kartik Agaram
8e9fde4210 initial draft of solution for 'compute-addresses'
No trace statements yet, so we don't know if it works.
2019-06-28 18:20:21 -07:00
Kartik Agaram
a7e21dbdf7 .
Flesh out final test some more. We also now have a new family of
primitives for writing non-strings to input streams in tests.
2019-06-28 16:54:41 -07:00
Kartik Agaram
b5f80415d6 pseudocode skeletons for all functions 2019-06-13 14:20:35 -07:00
Kartik Agaram
acdd7a7a68 . 2019-06-13 01:08:02 -07:00
Kartik Agaram
55ea211d87 flesh out survey tests 2019-06-12 10:18:51 -07:00
Kartik Agaram
66bce436b3 .
Now that we don't have to edit code to run a single test, delete that
commented out fragment everywhere.
2019-06-12 00:13:34 -07:00
Kartik Agaram
35272969cf Fix stale initialize-trace-stream 2019-06-08 12:38:53 -07:00
Kartik Agaram
965dd1bf56 .
'get-or-insert-stream' is now the more generic 'get-or-insert' that can
handle tables of any value type. But callers have to be careful to cast
values to the right type.
2019-05-27 11:11:36 -07:00
Kartik Agaram
7c575de40d . 2019-05-26 13:18:16 -07:00
Kartik Agaram
bd31dbe854 .
hoist 'Heap' variable into the std library in anticipation of the parse-array-of-ints
primitive.
2019-05-25 00:45:31 -07:00
Kartik Agaram
90fd6a669a .
add lengths to data blobs
2019-05-19 12:47:21 -07:00
Kartik Agaram
2a72df4a57 initial skeleton for survey.subx
Start of the final phase needed to implement SubX in SubX:

  $ cat files.subx ... |dquotes |assort |pack |survey |hex > a.elf

survey.subx is responsible for assigning addresses to labels and segments.
2019-05-18 14:30:50 -07:00