about summary refs log tree commit diff stats
path: root/065duplex_list.mu
Commit message (Collapse)AuthorAgeFilesLines
* 3894 - comment/uncomment lines in edit appKartik K. Agaram2017-05-291-0/+45
|
* 3893Kartik K. Agaram2017-05-291-81/+113
|
* 3881 - allow students to turn sandboxes into recipesKartik K. Agaram2017-05-271-0/+76
| | | | Thanks Juan Crispin Hernandez for the suggestion.
* 3880Kartik K. Agaram2017-05-271-0/+22
|
* 3879Kartik K. Agaram2017-05-261-10/+4
|
* 3808 - 'length' for duplex listsKartik K. Agaram2017-03-311-0/+12
|
* 3429 - standardize Mu scenariosKartik K. Agaram2016-09-281-38/+26
| | | | | | | | | | | | | A long-standing problem has been that I couldn't spread code across 'run' blocks because they were separate scopes, so I've ended up making them effectively comments. Running code inside a 'run' block is identical in every way to simply running the code directly. The 'run' block is merely a visual aid to separate setup from the component under test. In the process I've also standardized all Mu scenarios to always run in a local scope, and only use (raw) numeric addresses for values they want to check later.
* 3389Kartik K. Agaram2016-09-171-68/+68
|
* 3386Kartik K. Agaram2016-09-171-11/+11
|
* 3385Kartik K. Agaram2016-09-171-3/+3
|
* 3379Kartik K. Agaram2016-09-171-89/+89
| | | | Can't use type abbreviations inside 'memory-should-contain'.
* 3154 - reorg before making 'random' more testableKartik K. Agaram2016-07-271-0/+559
|
* 2430 - make room for more transformsKartik K. Agaram2015-11-131-555/+0
|
* 2363 - duplex-list is now generic.Kartik K. Agaram2015-11-051-252/+246
| | | | It wasn't a phase-ordering issue after all..
* 2247 - type-check products of non-primitive recipesKartik K. Agaram2015-10-051-36/+36
| | | | | | | | We still can't check ingredient types, and even this is still a run-time check. We'll need to start tracking recipe signatures at some point. I've had to introduce a hack called /skiptypecheck. Time to get generics working.
* 2241 - back to type-checking get-addressKartik K. Agaram2015-10-051-6/+6
| | | | | Now duplex-list is fully non-generic and only works with characters. But we'll fix that in a bit..
* 2234 - check type of get's productKartik K. Agaram2015-10-021-10/+10
| | | | Already I'm finding type errors in the programming environment.
* 2122 - undo/redo should now be workingKartik K. Agaram2015-09-011-0/+25
|
* 2121 - undo now supports the 'delete' keyKartik K. Agaram2015-09-011-0/+79
| | | | Still to go: ctrl-k and ctrl-u.
* 2118 - start on undo deletionsKartik K. Agaram2015-08-311-0/+13
|
* 2095Kartik K. Agaram2015-08-281-1/+0
| | | | | | | | | | | | Finally terminate the experiment of keeping debug prints around. I'm also going to give up on maintaining counts. What we really need is two kinds of tracing: a) For tests, just the domain-specific facts, organized by labels. b) For debugging, just transient dumps to stdout. b) only works if stdout is clean by default. Hmm, I think this means 'stash' should be the transient kind of trace.
* 2085 - undo/redo now working for simple typingKartik K. Agaram2015-08-271-2/+5
| | | | | Not yet useable, because we never ever stop coalescing operations. That will happen when we introduce a second type of operation.
* 2084Kartik K. Agaram2015-08-271-1/+58
|
* 2082Kartik K. Agaram2015-08-261-0/+16
|
* 1909 - clean up all null pointers of that ilkKartik K. Agaram2015-07-311-36/+36
|
* 1883 - type-deducing in more .mu filesKartik K. Agaram2015-07-291-47/+47
|
* 1869 - rename the /deref property to /lookupKartik K. Agaram2015-07-281-32/+32
| | | | Should be a little bit more mnemonic.
* 1868 - start using naked literals everywhereKartik K. Agaram2015-07-281-42/+42
| | | | First step to reducing typing burden. Next step: inferring types.
* 1780 - now we always reclaim local scopesKartik K. Agaram2015-07-131-6/+6
| | | | | | But still no difference in either memory footprint or in running time. This will teach me -- for the umpteenth time -- to optimize before measuring.
* 1773 - update all mu recipes to new-default-spaceKartik K. Agaram2015-07-131-6/+6
| | | | | Turns out to not affect memory utilization or run-time. At all. But still looks nicer and requires less fudging on our part.
* 1603Kartik K. Agaram2015-06-191-6/+15
|
* 1602Kartik K. Agaram2015-06-191-21/+31
| | | | | I forgot to check for nulls before writing prev pointers in doubly linked lists. Tests were accidentally passing.
* 1594 - removing from start/end of duplex listKartik K. Agaram2015-06-181-4/+67
| | | | | | | | | | This uncovers an issue with this interface to duplex lists: the caller needs to check the result and invalidate any other pointers if it's null (i.e. the list is now empty) We *could* try to encapsulate the list in a header to help the caller manage header pointers. But heck, let's see if writing tests helps call-sites stay on the straight and narrow.
* 1593Kartik K. Agaram2015-06-181-0/+75
|
* 1592Kartik K. Agaram2015-06-181-0/+36
|
* 1591Kartik K. Agaram2015-06-181-3/+43
|
* 1590 - inserting into doubly linked listKartik K. Agaram2015-06-181-0/+62
|
* 1589 - doubly linked listKartik K. Agaram2015-06-181-0/+74