| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Convert comments about magic constants into metadata.
|
|
|
|
| |
Still can't edit functions, but we're getting there.
|
|
|
|
|
|
|
|
|
| |
In particular, I'm starting to have opinions about how to scalably position
the cursor at the end of each frame.
One advantage of text mode without a pointer device (mouse/trackpad): only
one cursor to track. UI can't be modified anywhere. That simplifies any
reactive UI framework.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
https://github.com/akkartik/mu/issues/45#issuecomment-719990879, task 2.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Strings can contain spaces.
|
|
|
|
|
|
| |
This was very difficult to debug.
We still need to process space in the middle of a word.
|
| |
|
|
|
|
|
| |
Lesson learned: functions store args in _reverse_ order. Since evaluation
is very frequent, it's worth optimizing for it.
|
| |
|
|
|
|
|
| |
Cursor now in the right place after rename. But stack still doesn't show
the value of a name.
|
|
|
|
|
| |
Names don't stick yet, but we have a scaffolding for printing a dialog
and accepting input.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
A new example that better demonstrates the value of named arguments.
|
| |
|
|
|
|
|
|
|
| |
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+`.
|
|
|
|
|
| |
Bring back definitions for 1+ and 2+. Expanding nested calls still doesn't
work.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Snapshot. We've gotten arrow keys navigating, but segfault when getting
to the second word in an expanded function call body.
|
|
|
|
| |
Rather surprisingly, this transformation worked the first time!
|
|
|
|
| |
Fix and cleanup.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Function expand/contract still works, but the implementation is totally
different under the hood.
|
| |
|
| |
|
|
|
|
|
| |
Slowly hoist cursor-word from environment to sandbox. This isn't its final
destination.
|
| |
|
| |
|
|
|
|
| |
Track just whether to step inside or not.
|
|
|
|
| |
Back to commit 6872.
|
|
|
|
|
| |
Snapshot. Caching subsidiary stacks is a dead end; they're just the final
iteration. We need to render all iterations.
|
|
|
|
| |
Now saving the subsidiary stack.
|
|
|
|
|
|
| |
Emit a stack of not ints but more complex objects containing the int payload.
Function calls again segfaulting.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|