Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 7160 | Kartik Agaram | 2020-11-02 | 2 | -133/+133 |
| | |||||
* | 7159 - explicitly use 'return' everywhere | Kartik Agaram | 2020-11-02 | 18 | -455/+407 |
| | | | | https://github.com/akkartik/mu/issues/45#issuecomment-719990879, task 2. | ||||
* | 7158 | Kartik Agaram | 2020-11-02 | 4 | -372/+310 |
| | |||||
* | 7157 | Kartik Agaram | 2020-11-01 | 6 | -101/+96 |
| | |||||
* | 7156 | Kartik Agaram | 2020-11-01 | 2 | -3/+6 |
| | |||||
* | 7155 | Kartik Agaram | 2020-11-01 | 1 | -12/+12 |
| | | | | apps/arith.mu compiling again. | ||||
* | 7154 | Kartik Agaram | 2020-11-01 | 12 | -369/+141 |
| | |||||
* | 7153 | Kartik Agaram | 2020-11-01 | 2 | -3/+7 |
| | | | | Bugfix in computing the label a return should jump to. | ||||
* | 7152 - 'return' instruction | Kartik Agaram | 2020-11-01 | 4 | -1/+644 |
| | | | | | | https://github.com/akkartik/mu/issues/45#issuecomment-719990879, task 1. We don't have checking for it yet. Soon. | ||||
* | 7151 | Kartik Agaram | 2020-11-01 | 2 | -97/+46 |
| | | | | Drop pending tests for the old plan of liveness analysis. | ||||
* | 7150 | Kartik Agaram | 2020-10-31 | 1 | -0/+16 |
| | |||||
* | 7149 | Kartik Agaram | 2020-10-31 | 1 | -1/+1 |
| | |||||
* | 7148 | Kartik Agaram | 2020-10-31 | 2 | -5/+2 |
| | |||||
* | 7147 | Kartik Agaram | 2020-10-31 | 2 | -8/+14 |
| | |||||
* | 7146 | Kartik Agaram | 2020-10-31 | 2 | -173/+173 |
| | |||||
* | 7145 - roll back to 7143 | Kartik Agaram | 2020-10-30 | 1 | -89/+174 |
| | |||||
* | 7144 - tmp: redo checks for function outputs | Kartik Agaram | 2020-10-30 | 1 | -174/+89 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This isn't done, but an intermediate snapshot seems worth capturing. Back in March (commit 6082), I made a plan to check writes to function outputs using liveness analysis. I've been shying away from actually acting on this plan ever since. In recent weeks I've had this gap bite me three times. Returning to the problem now, I think I don't actually need to compute variable liveness. The compiler can, I think, do the same thing for output registers whether their variables are alive or dead. The new rule is this: Once a register gets a function output written to it, no local is popped into it. Instead of popping outer locals to the register, we simply increment the stack and keep going. Since the function output will continue to live on the vars stack past this point (see clean-up-block), any attempts to read shadowed variables will throw an error as usual. This rule is also now easy to explain to people, I think. "You wrote the function output. Now the register can't be used for anything else." It's really cool that this works (if it does). Another fruit from "Mu's lovely property." | ||||
* | 7143 | Kartik Agaram | 2020-10-29 | 2 | -1/+1 |
| | | | | Am I starting to have too much code duplication? | ||||
* | 7142 | Kartik Agaram | 2020-10-29 | 2 | -0/+4 |
| | |||||
* | 7141 | Kartik Agaram | 2020-10-29 | 2 | -4/+1 |
| | |||||
* | 7140 | Kartik Agaram | 2020-10-29 | 1 | -0/+11 |
| | |||||
* | 7139 - type-check compute-offset | Kartik Agaram | 2020-10-29 | 2 | -13/+908 |
| | |||||
* | 7138 - type-check array 'length' instruction | Kartik Agaram | 2020-10-29 | 16 | -6/+838 |
| | |||||
* | 7137 | Kartik Agaram | 2020-10-28 | 2 | -2/+2 |
| | |||||
* | 7136 | Kartik Agaram | 2020-10-28 | 2 | -10/+10 |
| | |||||
* | 7135 - type-check write-to-stream | Kartik Agaram | 2020-10-28 | 2 | -0/+668 |
| | | | | Lots of copy-pasta. | ||||
* | 7134 - type-check read-from-stream | Kartik Agaram | 2020-10-28 | 2 | -0/+562 |
| | |||||
* | 7133 | Kartik Agaram | 2020-10-28 | 1 | -2/+2 |
| | |||||
* | 7132 | Kartik Agaram | 2020-10-28 | 1 | -0/+0 |
| | |||||
* | 7131 | Kartik Agaram | 2020-10-28 | 1 | -1/+1 |
| | |||||
* | 7130 - back to the Mu compiler for a spell | Kartik Agaram | 2020-10-27 | 2 | -0/+106 |
| | | | | | Hacking on apps has created some urgency now for several additional safety checks. | ||||
* | 7129 - tile: allow bindings anywhere | Kartik Agaram | 2020-10-27 | 1 | -7/+7 |
| | | | | | | | | | | Amazing how easy this was. And it does feel more intuitive. If I decide at some point that I want to bind something to a name I don't usually want to lose the entire line after that point. It also sidesteps for now the thorny question of whether to permit organically switching to a new line (rather than using the 'name value' hotkey), and how that should work. | ||||
* | 7128 | Kartik Agaram | 2020-10-27 | 1 | -5/+11 |
| | | | | More consistent spacing in sandbox render. | ||||
* | 7127 | Kartik Agaram | 2020-10-27 | 3 | -1/+209 |
| | |||||
* | 7126 | Kartik Agaram | 2020-10-27 | 1 | -5/+5 |
| | |||||
* | 7125 - tile: fade out values on the stack | Kartik Agaram | 2020-10-27 | 1 | -4/+1 |
| | |||||
* | 7124 - tiles: better 'lines' primitive | Kartik Agaram | 2020-10-27 | 3 | -14/+58 |
| | |||||
* | 7123 - tile: truncate string if necessary | Kartik Agaram | 2020-10-26 | 5 | -3/+124 |
| | |||||
* | 7122 - tile: styling for strings | Kartik Agaram | 2020-10-26 | 1 | -1/+6 |
| | |||||
* | 7121 | Kartik Agaram | 2020-10-26 | 1 | -5/+11 |
| | | | | | | | Starting to polish 'line-count' demo: filename line-count = filename open lines len | ||||
* | 7120 - tile: array of lines from file | Kartik Agaram | 2020-10-26 | 6 | -2/+106 |
| | | | | Requires a quick hacky change to Mu compiler. | ||||
* | 7119 - tile: new primitive to slurp file contents | Kartik Agaram | 2020-10-26 | 2 | -1/+41 |
| | | | | | Stack display is messed up when file contents contain newlines. Ignoring that for now. | ||||
* | 7118 | Kartik Agaram | 2020-10-26 | 1 | -3/+5 |
| | |||||
* | 7117 | Kartik Agaram | 2020-10-26 | 1 | -2/+4 |
| | |||||
* | 7116 - tile: regression in typing in strings | Kartik Agaram | 2020-10-26 | 2 | -55/+46 |
| | | | | We really need to clean up the Mu compiler's logic around function outputs. | ||||
* | 7115 | Kartik Agaram | 2020-10-26 | 4 | -16/+16 |
| | |||||
* | 7114 | Kartik Agaram | 2020-10-26 | 1 | -0/+3 |
| | |||||
* | 7113 | Kartik Agaram | 2020-10-26 | 1 | -2/+12 |
| | |||||
* | 7112 - tile: arrays of non-integers | Kartik Agaram | 2020-10-26 | 4 | -73/+125 |
| | |||||
* | 7111 | Kartik Agaram | 2020-10-26 | 1 | -36/+41 |
| |