about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* 3016Kartik K. Agaram2016-05-261-2/+2
|
* 3015 - more symbolic names in testsKartik K. Agaram2016-05-267-521/+569
| | | | | | There's still a problem: if I ever want to use any of the special scenario variables like 'screen', 'console', etc., then I can't use 'local-scope' in my scenario.
* 3014Kartik K. Agaram2016-05-261-126/+126
| | | | | Tests are clearer if memory locations look different from other literal values.
* 3013Kartik K. Agaram2016-05-2612-342/+356
|
* 3012Kartik K. Agaram2016-05-261-209/+255
| | | | Clean up old tests after https://news.ycombinator.com/item?id=11779013
* 3011Kartik K. Agaram2016-05-251-0/+0
|
* 3010Kartik K. Agaram2016-05-251-2/+2
| | | | | | | | | | insert_container is getting pretty gnarly. It's spread across two layers (containers and shape-shifting containers), and since it has to deal with extending existing containers it's coiled in on itself, constantly reading and writing the Type table. Maybe I should uncoil the case of extending a container and make it separate from defining a new container.
* 3009Kartik K. Agaram2016-05-251-2/+6
|
* 3008Kartik K. Agaram2016-05-252-5/+5
|
* 3007 - warn on unused result in 'not'Kartik K. Agaram2016-05-251-2/+2
|
* 3006Kartik K. Agaram2016-05-242-8/+9
|
* 3005Kartik K. Agaram2016-05-241-32/+0
| | | | | | Drop those tests now that we've confirmed over the last few commits that they work. The new test introduced in the bugfix of commit 3003 takes over their duties.
* 3004 - print non-integers correctlyKartik K. Agaram2016-05-241-74/+27
| | | | | | Thanks Caleb Couch for finding this hole, and for noticing that it made a bug in binary-search harder to find. For now we'll just rely on the host's support for printing floating-point.
* 3003Kartik K. Agaram2016-05-242-2/+32
| | | | | | Bugfix: overriding a primitive recipe with a generic variant that takes an address of something shouldn't mask the primitive when you call it with literal 0.
* 3002Kartik K. Agaram2016-05-241-0/+1
|
* 3001Kartik K. Agaram2016-05-243-11/+18
|
* 3000Kartik K. Agaram2016-05-241-1/+1
|
* 2999Kartik K. Agaram2016-05-241-2/+2
|
* 2998Kartik K. Agaram2016-05-242-4/+8
|
* 2997 - new version of http://akkartik.name/aboutKartik K. Agaram2016-05-232-7/+7
|
* 2996Kartik K. Agaram2016-05-2177-2858/+5390
|
* 2995Kartik K. Agaram2016-05-211-0/+15
|
* 2994Kartik K. Agaram2016-05-211-1/+1
|
* 2993 - mutable check for pass-by-value containersKartik K. Agaram2016-05-211-4/+23
| | | | This fixes all known holes in the immutability checker.
* 2992Kartik K. Agaram2016-05-203-1/+29
| | | | | Raise an error if a 'put' or 'put-index' doesn't match ingredient and product. That wouldn't do what you would expect.
* 2991Kartik K. Agaram2016-05-203-7/+7
| | | | | Never mind, always quote direct quotes from code in error messages. Dilated reagents are the uncommon case.
* 2990Kartik K. Agaram2016-05-2044-291/+281
| | | | | | | | | | Standardize quotes around reagents in error messages. I'm still sure there's issues. For example, the messages when type-checking 'copy'. I'm not putting quotes around them because in layer 60 I end up creating dilated reagents, and then it's a bit much to have quotes and (two kinds of) brackets. But I'm sure I'm doing that somewhere..
* 2988 - bring back immutability checksKartik K. Agaram2016-05-201-0/+544
| | | | | | These were dropped back in commit 2858 (Apr 23). There are still holes in immmutability checking, this just brings us back to parity while using put/put-index instead of get-address/index-address.
* 2987Kartik K. Agaram2016-05-207-0/+0
|
* 2986 - new example: the 8-queens problemKartik K. Agaram2016-05-202-0/+100
| | | | Just playing around with edit/ and trying to find bugs.
* 2985 - allow multiple pointers within listsKartik K. Agaram2016-05-201-3/+2
| | | | | | | | | | Earlier, this wasn't legal: y:address:list:number <- push 34, x:address:list:number (So that x and y would point to different places in the list.) However, functional code relies on this ability a lot.
* 2984Kartik K. Agaram2016-05-191-0/+272
| | | | Missed a file.
* 2983 - migrate buttons over to sandbox/Kartik K. Agaram2016-05-1914-384/+366
|
* 2982Kartik K. Agaram2016-05-191-6/+6
|
* 2981 - sandbox buttons implemented in edit/Kartik K. Agaram2016-05-195-123/+379
|
* 2980Kartik K. Agaram2016-05-191-0/+3
|
* 2979Kartik K. Agaram2016-05-195-0/+0
|
* 2978 - support new 'edit' button in edit/Kartik K. Agaram2016-05-193-26/+101
|
* 2977 - draw new sandbox menu in edit/Kartik K. Agaram2016-05-197-376/+401
| | | | | | | | | | | | | Doesn't work as advertised yet. This is just the render piece, and fixing all the tests. I've been careful to try to break tests for edit once I implement the button. Delete I can't ensure will break afterwards. Remember to test clicking on multiple places on the menu. Managing the screens is starting to grow onerous; maybe we need something called normalize which clears some things. But the sandbox menu can be on arbitrary lines..
* 2976Kartik K. Agaram2016-05-191-4/+18
|
* 2975Kartik K. Agaram2016-05-198-19/+21
| | | | Clean up this helper before we start redoing sandbox menubars.
* 2974Kartik K. Agaram2016-05-182-23/+24
| | | | Fix CI failure.
* 2973 - reclaim refcounts for local scopes againKartik K. Agaram2016-05-185-46/+167
| | | | | | More thorough redo of commit 2767 (Mar 12), which was undone in commit 2810 (Mar 24). It's been a long slog. Next step: write a bunch of mu code in the edit/ app in search of bugs.
* 2972 - abandon recursive containersKartik K. Agaram2016-05-173-15/+129
|
* 2971Kartik K. Agaram2016-05-1715-32/+25
| | | | | | Long-overdue reorganization to support general 'dilated' reagents up front. This also allows me to move tests that are really about unrelated layers out of layers dealing with parsing.
* 2970Kartik K. Agaram2016-05-171-4/+4
|
* 2969Kartik K. Agaram2016-05-171-1/+1
|
* 2968Kartik K. Agaram2016-05-174-17/+42
| | | | | | | | | | | | | | | | | | | | | | | More reorganization in preparation for implementing recursive abandon(). Refcounts are getting incredibly hairy. I need to juggle containers containing other containers, and containers *pointing* to other containers. For a while I considered getting rid of address_element_info entirely and just going by types for every single update_refcount. But that's definitely more work, and it's unclear that things will be cleaner/shorter/simpler. I haven't measured the speedup, but it seems worth optimizing every pointer copy to make sure we aren't manipulating types at runtime. The key insight now is a) to continue to compute information about nested containers at load time, because that's the common case when updating refcounts, but b) to compute information about *pointed* values at run-time, because that's the uncommon case. As a result, we're going to cheat in the interpreter and use type information at runtime just for abandon(), just because the corresponding task when we get to a compiler will be radically different. It will still be tractable, though.
* 2967Kartik K. Agaram2016-05-172-19/+19
|
* 2966Kartik K. Agaram2016-05-173-8/+10
|