about summary refs log tree commit diff stats
path: root/subx
Commit message (Collapse)AuthorAgeFilesLines
* some primitives for emitting tracesKartik Agaram2019-07-0111-3/+479
| | | | | | | | | | | | | | 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.
* .Kartik Agaram2019-07-019-0/+113
|
* unsigned comparison for addresses in more placesKartik Agaram2019-07-0120-33/+32
|
* .Kartik Agaram2019-07-011-2/+2
|
* .Kartik Agaram2019-07-011-2/+5
| | | | | | | | | | | | | | | When rerunning most recently run test, also load the same files as before. Try the following commands in sequence: $ ./run_one_test.sh 056trace.subx test-compute-addresses # 1 0 error: missing reference to global 'test-compute-addresses' $ ./run_one_test.sh apps/survey.subx test-compute-addresses # 2 $ ./run_one_test.sh 056trace.subx trace # run previous test # 3 Now command 3 will work, and it will behave identically to command 2. This way I can switch to another file in Vim and hit `\t` in a random place in the file and still have the previously run test be rerun.
* .Kartik Agaram2019-07-011-1/+3
|
* .Kartik Agaram2019-07-011-7/+1
|
* .Kartik Agaram2019-07-011-7/+2
| | | | | Simplify run_one_test.sh. We already create /tmp/run_one_test.subx, we don't need to track more state across runs.
* .Kartik Agaram2019-07-012-3/+3
| | | | Fix some comments.
* .Kartik Agaram2019-07-011-1/+1
|
* .Kartik Agaram2019-07-011-3/+3
|
* add test datanc2019-06-291-1/+10
|
* Implement is-label?nc2019-06-291-0/+75
|
* .Kartik Agaram2019-06-282-0/+3
|
* initial draft of solution for 'compute-addresses'Kartik Agaram2019-06-286-15/+331
| | | | No trace statements yet, so we don't know if it works.
* .Kartik Agaram2019-06-285-44/+44
|
* .Kartik Agaram2019-06-287-0/+0
| | | | Clean up CI.
* .Kartik Agaram2019-06-282-12/+155
| | | | | Flesh out final test some more. We also now have a new family of primitives for writing non-strings to input streams in tests.
* fix layout and some commentsKartik Agaram2019-06-171-43/+76
| | | | When two assertions don't share context they're clearer when separated.
* .Kartik Agaram2019-06-171-160/+160
| | | | | | | Move tests adjacent to function being tested. Originally I didn't expect the helpers to get their own tests. But even so, arguably the original layout was less clear.
* .Kartik Agaram2019-06-171-6/+6
|
* .Kartik Agaram2019-06-171-13/+21
| | | | | Make a test a little less confusing; stream was initialized with data filled in but outside bounds.
* fix two hangs in trace-scanKartik Agaram2019-06-171-6/+27
| | | | | 1. skip-next-line should skip newline 2. trace-scan was falling into an infinite loop on non-matching lines
* move test data to bottom of fileKartik Agaram2019-06-171-28/+30
|
* bugfix to opcode 8f; it requires subopsKartik Agaram2019-06-171-2/+1
|
* support `CFLAGS=-g ./run_one_test.sh ...`Kartik Agaram2019-06-171-2/+3
|
* .Kartik Agaram2019-06-161-0/+1
| | | | | | | | This missing line was giving the illusion that all was well when running a single test at a time. Now trace-scan still hangs, but it hangs reliably. And it's clear what the logic error is.
* fix bug in skip-next-linenc2019-06-151-1/+2
|
* implement next-line-matches?nc2019-06-151-8/+133
|
* implement skip-next-linenc2019-06-151-9/+88
|
* pseudocode skeletons for all functionsKartik Agaram2019-06-132-7/+152
|
* .Kartik Agaram2019-06-131-1/+36
|
* flesh out survey testsKartik Agaram2019-06-122-15/+219
|
* .Kartik Agaram2019-06-121-1/+8
| | | | Fix a bug when running tests singly in the 'SubX standard library'.
* .Kartik Agaram2019-06-1219-114/+0
| | | | | Now that we don't have to edit code to run a single test, delete that commented out fragment everywhere.
* .Kartik Agaram2019-06-111-0/+1
|
* rerun most recent test if cursor not in a testKartik Agaram2019-06-112-1/+15
|
* fork vimrc for Mu and SubXKartik Agaram2019-06-111-1/+93
| | | | | I checked if we needed to bring back anything since commit 3976, but the only difference is dropping the :(scenario) DSL.
* new Vim convenience macroKartik Agaram2019-06-112-0/+37
| | | | Runs test under cursor and opens its trace.
* .Kartik Agaram2019-06-114-100/+0
|
* .Kartik Agaram2019-06-091-7/+7
|
* .Kartik Agaram2019-06-081-3/+3
|
* .Kartik Agaram2019-06-081-1/+1
|
* fix stale docsKartik Agaram2019-06-081-11/+5
|
* snapshot of trace primitivesKartik Agaram2019-06-081-0/+346
|
* .Kartik Agaram2019-06-089-73/+61
|
* Fix stale `initialize-trace-stream`Kartik Agaram2019-06-0810-8/+287
|
* .Kartik Agaram2019-06-082-0/+0
|
* .Kartik Agaram2019-06-089-22/+17
| | | | Simplify `string-equal`.
* implement compute-widthnc2019-06-082-270/+357
|