about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
...
* 2452Kartik K. Agaram2015-11-162-11/+11
|
* 2451 - drop zoom/maximize featureKartik K. Agaram2015-11-151-125/+0
| | | | | | | | | I notice that it isn't working perfectly; after maximize/unmaximize the editor stops wrapping text, like it still thinks the editor is maximized. We don't even use this feature anymore, do we? Just delete it rather than bother debugging.
* 2450 - another pesky bugKartik K. Agaram2015-11-152-0/+23
|
* 2449Kartik K. Agaram2015-11-151-0/+1
|
* 2448Kartik K. Agaram2015-11-151-0/+2
|
* 2447Kartik K. Agaram2015-11-1517-313/+523
|
* 2446 - drop '-duplex' namespacing in recipesKartik K. Agaram2015-11-1513-308/+308
| | | | Great that it just worked after the previous commit.
* 2445 - dispatch between shape-shifting variantsKartik K. Agaram2015-11-155-10/+115
| | | | | Starting to leave debug prints around once again, just in case one of them is worth promoting to the trace..
* 2444Kartik K. Agaram2015-11-152-2/+21
| | | | Yet another bugfix as I trace through the last session with Caleb.
* 2443Kartik K. Agaram2015-11-151-12/+28
| | | | | Another little bit of polish: if a call doesn't do enough for a complete specialization, show a decent error message and above all: don't die!
* 2442Kartik K. Agaram2015-11-156-37/+37
| | | | | | Fix the drawback in the previous commit: if an ingredient is just a literal 0 we'll skip its type-checking and hope to map type ingredients elsewhere.
* 2441 - never miss any specializationsKartik K. Agaram2015-11-158-37/+76
| | | | | | | | | I was failing to specialize calls containing literals. And then I had to deal with whether literals should map to numbers or characters. (Answer: both.) One of the issues that still remains: shape-shifting recipes can't be called with literals for addresses, even if it's 0.
* 2440Kartik K. Agaram2015-11-141-2/+1
| | | | | | In debugging 2438, I spent a while going around in circles trying to decide if there was a stray overload of 'interactive'. Part of the problem was the hacky delete of a recipe just above. Stop doing that.
* 2439 - bugfix: commandline ingredientsKartik K. Agaram2015-11-141-5/+10
|
* 2438 - specialize inside header-less recipesKartik K. Agaram2015-11-142-2/+26
| | | | | | | What was I thinking with 2366? Thanks Caleb Couch. It turned out we couldn't call shape-shifting recipes inside the edit/ or sandbox/ apps.
* 2437Kartik K. Agaram2015-11-141-3/+4
|
* 2436Kartik K. Agaram2015-11-141-2/+2
|
* 2435Kartik K. Agaram2015-11-131-2/+2
|
* 2434Kartik K. Agaram2015-11-131-0/+4
|
* 2433 - temporarily undo 2432Kartik K. Agaram2015-11-134-270/+51
| | | | | | Lessons with Caleb uncovered a problem with type ingredients: I can call shape-shifting recipes like 'push' from the commandline but not inside the edit/ or sandbox/ apps.
* 2432 - first stab at making ingredients immutableKartik K. Agaram2015-11-134-51/+270
| | | | | | | | | | | | | | | The rule is, an address ingredient is only modifiable if: a) it's also a product b) it's /contained-in some other ingredient+product Only if an ingredient is a modifiable can you: a) call get-address or index-address on it (the only way to write to it) b) call other recipes that also return it in a product I still don't check copies of the address. That's next. Core mu passes this check, but none of the example apps do. edit/ and sandbox/ are known to fail.
* 2431Kartik K. Agaram2015-11-132-2/+4
|
* 2430 - make room for more transformsKartik K. Agaram2015-11-1341-45/+79
|
* 2429Kartik K. Agaram2015-11-131-7/+6
|
* 2428 - sandbox/ working againKartik K. Agaram2015-11-1212-544/+521
|
* 2427Kartik K. Agaram2015-11-121-3/+3
|
* 2426Kartik K. Agaram2015-11-117-13/+72
|
* 2425Kartik K. Agaram2015-11-101-7/+8
|
* 2424Kartik K. Agaram2015-11-102-16/+6
|
* 2423 - describe shape-shifting in html docsKartik K. Agaram2015-11-1085-4094/+7173
|
* 2422 - a bugfix from the last lessonKartik K. Agaram2015-11-101-1/+59
| | | | Thanks Caleb Couch. This one's been on my list for 2 weeks.
* 2421 - 'generic' => 'shape-shifting'Kartik K. Agaram2015-11-103-28/+28
| | | | More evocative, less jargony.
* 2420Kartik K. Agaram2015-11-101-1/+0
|
* 2419Kartik K. Agaram2015-11-102-67/+67
|
* 2418 - start raising errors on generic callsKartik K. Agaram2015-11-102-19/+38
|
* 2417 - support mutable ingredients in headersKartik K. Agaram2015-11-107-52/+96
| | | | | | If a name repeats between ingredients, we raise an error. If a name repeats across ingredients and products, every call should share the same name across the corresponding ingredients and products.
* 2416Kartik K. Agaram2015-11-101-1/+1
|
* 2415 - backfill test for 2396Kartik K. Agaram2015-11-091-0/+15
| | | | This is the last one I can think of.
* 2414 - clear memory leaksKartik K. Agaram2015-11-091-4/+26
|
* 2413 - another backfilled test for 2391Kartik K. Agaram2015-11-094-0/+40
| | | | This time for the support for 'new' that was added in 2393.
* 2412 - backfill test for 2391Kartik K. Agaram2015-11-091-1/+18
| | | | Tiny patch for such a large change, but we do what we can.
* 2411 - backfill test for 2400Kartik K. Agaram2015-11-091-0/+11
|
* 2410Kartik K. Agaram2015-11-091-2/+0
|
* 2409 - stabilize tracesKartik K. Agaram2015-11-091-1/+0
|
* 2407 - bugfix: parsing recipe headersKartik K. Agaram2015-11-092-3/+29
|
* 2406Kartik K. Agaram2015-11-088-80/+49
| | | | | One new issue: the traces for all tests are perturbed by the .mu files we choose to load.
* 2405Kartik K. Agaram2015-11-082-23/+25
|
* 2404 - ah, finally a useful assertionKartik K. Agaram2015-11-083-10/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | And it caught a bug: I mean to always update type names and types in sync. The last month or so I've been getting reluctantly but inexorably converted to the need and value of a type system. First I thought I just need a minimal but rigorous type system to avoid memory corruption and security issues. Now I think I also want it to be expressive enough to be able to express what data different phases in a compiler read and write, and to be able to designate specific fields as 'fully computed' so that we can statically check that phases wait until their data is available. The phase-ordering problem in a compiler is perhaps the canary in the coal-mine for a more general problem: even small changes can dramatically explode the state space if they violate assumptions previously held about the domain. My understanding of when type pointers are null and not null is immeasurably more nuanced today than it was a week ago, but I didn't need the nuance until I introduced generic functions. That initial draft of a hundred lines bumped me up to a much larger state space. How to make it more obvious when something happens that is akin to discovering a new continent, or finding oneself teleported to Jupiter? Assumptions can be implicit or explicit. Perhaps a delete of an assertion should be estimated at 1000 LoC of complexity?
* 2403 - experiment: documenting non-assertionsKartik K. Agaram2015-11-082-2/+2
| | | | | | | Is that like a Maybe type in a type system? No it's more, it captures the wistful longing of several hours spent trying to make an assertion true. Not even by moving my phases relating to the types around could I make this assertion true.
* 2402Kartik K. Agaram2015-11-081-2/+2
|