about summary refs log tree commit diff stats
path: root/apps/tile/main.mu
Commit message (Collapse)AuthorAgeFilesLines
* 7690Kartik Agaram2021-02-071-9/+9
| | | | Convert comments about magic constants into metadata.
* 7336 - tile: back to function editingKartik Agaram2020-12-051-12/+1
|
* 7305 - make float-size more consistent as wellKartik Agaram2020-11-291-0/+4
|
* 7297 - tile: use floats everywhereKartik Agaram2020-11-291-3/+3
|
* 7225Kartik Agaram2020-11-111-0/+1
| | | | | | | Both manual tests described in commit 7222 now work. To make them work I had to figure out how to copy a file. It requires a dependency on a new syscall: lseek.
* 7218Kartik Agaram2020-11-091-4/+7
| | | | | | | | | | | | | | | This bug was incredibly painful to track down: the one-line fix is to replace 'line' with 'first-line' in the call to 'evaluate' in render-line before recursing. Things that made it challenging: - A high degree of coiling with recursive calls and multiple places of evaluation. - An accidental aliasing in bindings (when rendering the main column in render-line) that masked the underlying bug and made things seem to work most of the time. - Too many fucking arguments to render-line, a maze of twisty line objects all alike.
* 7210Kartik Agaram2020-11-071-11/+24
| | | | | Bug fixed; I had to reinitialize the table of bindings. Interesting debugging experience.
* 7166Kartik Agaram2020-11-031-42/+40
|
* 7159 - explicitly use 'return' everywhereKartik Agaram2020-11-021-20/+17
| | | | https://github.com/akkartik/mu/issues/45#issuecomment-719990879, task 2.
* 7156Kartik Agaram2020-11-011-2/+2
|
* 7123 - tile: truncate string if necessaryKartik Agaram2020-10-261-0/+4
|
* 7116 - tile: regression in typing in stringsKartik Agaram2020-10-261-13/+0
| | | | We really need to clean up the Mu compiler's logic around function outputs.
* 7103 - tile: first primitive for stringsKartik Agaram2020-10-251-0/+13
|
* 7101 - tile: remove quotes when evaluating stringsKartik Agaram2020-10-251-6/+1
| | | | This found several bugs due to me not checking for null strings.
* 7098 - tile: string valuesKartik Agaram2020-10-251-11/+3
| | | | Strings can contain spaces.
* tile: process space at start of wordKartik Agaram2020-10-241-2/+13
| | | | | | This was very difficult to debug. We still need to process space in the middle of a word.
* 7087 - defining functions now seems to be workingKartik Agaram2020-10-201-11/+2
|
* 7063 - tile: scaffolding for defining functionsKartik Agaram2020-10-181-1/+1
|
* 7061Kartik Agaram2020-10-181-1/+1
|
* 7059Kartik Agaram2020-10-181-1/+8
| | | | | Cursor now in the right place after rename. But stack still doesn't show the value of a name.
* 7058Kartik Agaram2020-10-181-7/+1
| | | | | Snapshot; things seem to be working besides ctrl-r, but we aren't yet rendering only the final line.
* 7053Kartik Agaram2020-10-171-1/+3
| | | | | Rename seems to now be working. State still isn't rendered right, so we can't be sure.
* 7037Kartik Agaram2020-10-151-6/+4
| | | | | Expanding words now working, but ctrl-f/ctrl-b inside expanded words not working right.
* 7035Kartik Agaram2020-10-151-2/+6
| | | | | ctrl-f and ctrl-b working right. Now ctrl-u is segfaulting. Also expanding words.
* 7034Kartik Agaram2020-10-151-0/+2
| | | | | Finally following up on commit 7020. Ctrl-a and ctrl-e now work, but word-wise motions are still showing some funkiness.
* 7021Kartik Agaram2020-10-141-0/+4
|
* 7020Kartik Agaram2020-10-141-5/+1
| | | | | | | | | snapshot: migrating call-path to store word handles rather than word indexes. ctrl-a and ctrl-e are segfaulting. There are likely other problems. The major new change here is that allocating a call-path-element no longer initializes it.
* 7018 - tile: tweak spacing between stacksKartik Agaram2020-10-131-12/+4
| | | | | Until now the word being typed had a slightly larger invisible margin, which was a little strange. Should look cleaner now.
* 7015 - bugfix in column width computationKartik Agaram2020-10-131-1/+13
| | | | | I just got bitten by variable shadowing! It's a lot less theoretical concern now.
* 7011 - tile: keep garbage out of the stackKartik Agaram2020-10-121-13/+2
|
* 7009 - tile: real hotkey to quitKartik Agaram2020-10-121-1/+1
|
* 7005 - tile: move to start/end of lineKartik Agaram2020-10-111-13/+1
|
* 7002 - tile: next-wordKartik Agaram2020-10-111-1/+5
|
* 7000 - tile: previous-word also bumps up to callerKartik Agaram2020-10-111-53/+5
|
* 6991 - tile: nested calls now expandingKartik Agaram2020-10-101-237/+10
| | | | | | | I just needed to remove an obsolete guardrail in render-line. Still seeing some bugs with left-arrow when playing around with the full expansion of `1 2+`.
* 6988Kartik Agaram2020-10-101-30/+242
| | | | | Oh, of course. I can't compare the word with the word at the cursor. Not even its interned pointer. We have to track the call path.
* 6987 - left-arrow to jump to caller/calleeKartik Agaram2020-10-101-16/+60
| | | | | | | Starting to work. I'm still seeing problems in lines with multiple expanded calls, but perhaps that's a rendering issue. The code is absolutely ghastly.
* 6982 - right-arrow now moves into expanded callsKartik Agaram2020-10-091-1/+21
| | | | | | | | | | | | Rendering is still ugly. Cursor isn't on the right row. But the hard part is behind us. This was a stupid mistake in function-body, and it happened because I've been getting lazy and passing (addr handle) objects when I should be passing in "constant" addr objects. I'm not sure why I was so resistant to debugging by print here. I spent 3 days waffling about with this bug.
* 6979Kartik Agaram2020-10-091-1/+1
| | | | | Use the fake-screen infrastructure we already have for non-interactive mode.
* 6978Kartik Agaram2020-10-091-0/+36
| | | | | | We don't have tests yet in the tile prototype, mostly because we don't yet feel confident about what desired behavior should be. But it's still helpful to have a non-interactive mode for tracking down segfaults.
* 6969Kartik Agaram2020-10-061-18/+0
| | | | Fix and cleanup.
* 6968Kartik Agaram2020-10-061-0/+18
| | | | | | | | | | | | Snapshot that requires a check in the Mu compiler. Currently I don't spill a register if it could possibly be over-written by a function output within. However, find-in-call-path is a good example of where this constraint is too lenient and results in unsafe code. The variable `curr` gets clobbered during loop update by the variable `match?`. What's the answer? Perhaps we should ban all conditional updates to function outputs? That'd be dashed inconvenient.
* 6963 - tile: more idiomatic conventional replKartik Agaram2020-10-051-37/+35
|
* 6962Kartik Agaram2020-10-051-7/+6
| | | | | Slowly hoist cursor-word from environment to sandbox. This isn't its final destination.
* 6870Kartik Agaram2020-09-261-6/+6
| | | | | | Emit a stack of not ints but more complex objects containing the int payload. Function calls again segfaulting.
* 6861 - tile: conventional replKartik Agaram2020-09-261-15/+77
|
* 6796Kartik Agaram2020-09-161-38/+7
| | | | Extremely hacky initial stab at a 1-line editor.
* 6792Kartik Agaram2020-09-161-1/+0
| | | | Roll back all buffering of Stdout.
* 6790 experiment: explicit flushKartik Agaram2020-09-161-0/+1
| | | | | | | | | tile is already visibly slow (49x212 screen) :/ So programmer needs more control over performance. But this may not be the right approach. That extra flush-stdout in tui.mu suggests it's either going to be finicky, or we have to flush on every attribute change. And going through a buffered-file may be slower. May.
* 6789 - tile: print keystrokes to screenKartik Agaram2020-09-161-0/+44
|