about summary refs log tree commit diff stats
path: root/apps/tile/data.mu
Commit message (Collapse)AuthorAgeFilesLines
* 7842 - new directory organizationKartik K. Agaram2021-03-031-641/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Baremetal is now the default build target and therefore has its sources at the top-level. Baremetal programs build using the phase-2 Mu toolchain that requires a Linux kernel. This phase-2 codebase which used to be at the top-level is now under the linux/ directory. Finally, the phase-2 toolchain, while self-hosting, has a way to bootstrap from a C implementation, which is now stored in linux/bootstrap. The bootstrap C implementation uses some literate programming tools that are now in linux/bootstrap/tools. So the whole thing has gotten inverted. Each directory should build one artifact and include the main sources (along with standard library). Tools used for building it are relegated to sub-directories, even though those tools are often useful in their own right, and have had lots of interesting programs written using them. A couple of things have gotten dropped in this process: - I had old ways to run on just a Linux kernel, or with a Soso kernel. No more. - I had some old tooling for running a single test at the cursor. I haven't used that lately. Maybe I'll bring it back one day. The reorg isn't done yet. Still to do: - redo documentation everywhere. All the README files, all other markdown, particularly vocabulary.md. - clean up how-to-run comments at the start of programs everywhere - rethink what to do with the html/ directory. Do we even want to keep supporting it? In spite of these shortcomings, all the scripts at the top-level, linux/ and linux/bootstrap are working. The names of the scripts also feel reasonable. This is a good milestone to take stock at.
* 7690Kartik Agaram2021-02-071-9/+9
| | | | Convert comments about magic constants into metadata.
* 7339 - tile: position cursor in correct functionKartik Agaram2020-12-061-4/+26
| | | | Still can't edit functions, but we're getting there.
* 7338 - tile: architecture starting to crystallizeKartik Agaram2020-12-051-0/+2
| | | | | | | | | 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.
* 7309 - tile: parsing strings into wordsKartik Agaram2020-11-301-155/+11
|
* 7297 - tile: use floats everywhereKartik Agaram2020-11-291-1/+1
|
* 7245 - tile: right-align functionsKartik Agaram2020-11-151-2/+62
|
* 7229 - tile: fix ctrl-eKartik Agaram2020-11-121-0/+13
|
* 7225Kartik Agaram2020-11-111-0/+2
| | | | | | | 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.
* 7195 - tile: create 'screen' objectsKartik Agaram2020-11-061-0/+1
|
* 7159 - explicitly use 'return' everywhereKartik Agaram2020-11-021-35/+19
| | | | https://github.com/akkartik/mu/issues/45#issuecomment-719990879, task 2.
* 7112 - tile: arrays of non-integersKartik Agaram2020-10-261-1/+1
|
* 7107 - tile: file handlesKartik Agaram2020-10-251-0/+1
|
* 7106 - tile: arrays of intsKartik Agaram2020-10-251-0/+1
|
* 7100 - tile: render string literalsKartik Agaram2020-10-251-0/+1
|
* 7099Kartik Agaram2020-10-251-3/+2
|
* 7098 - tile: string valuesKartik Agaram2020-10-251-4/+0
| | | | Strings can contain spaces.
* tile: process space at start of wordKartik Agaram2020-10-241-0/+12
| | | | | | 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-5/+27
|
* 7066 - tile: some more primitives for testingKartik Agaram2020-10-191-0/+87
| | | | | Lesson learned: functions store args in _reverse_ order. Since evaluation is very frequent, it's worth optimizing for it.
* 7063 - tile: scaffolding for defining functionsKartik Agaram2020-10-181-0/+1
|
* 7059Kartik Agaram2020-10-181-2/+16
| | | | | Cursor now in the right place after rename. But stack still doesn't show the value of a name.
* 7046 - start of flow for naming wordsKartik Agaram2020-10-171-0/+1
| | | | | Names don't stick yet, but we have a scaffolding for printing a dialog and accepting input.
* 7020Kartik Agaram2020-10-141-30/+49
| | | | | | | | | 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.
* 7010Kartik Agaram2020-10-121-1/+42
| | | | A new example that better demonstrates the value of named arguments.
* 7000 - tile: previous-word also bumps up to callerKartik Agaram2020-10-111-0/+2
|
* 6991 - tile: nested calls now expandingKartik Agaram2020-10-101-0/+41
| | | | | | | 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+`.
* 6990Kartik Agaram2020-10-101-54/+82
| | | | | Bring back definitions for 1+ and 2+. Expanding nested calls still doesn't work.
* 6987 - left-arrow to jump to caller/calleeKartik Agaram2020-10-101-66/+102
| | | | | | | 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.
* 6977Kartik Agaram2020-10-091-0/+23
| | | | | Snapshot. We've gotten arrow keys navigating, but segfault when getting to the second word in an expanded function call body.
* 6972 - tile: stop persisting cursor-wordKartik Agaram2020-10-081-15/+36
| | | | Rather surprisingly, this transformation worked the first time!
* 6969Kartik Agaram2020-10-061-6/+5
| | | | Fix and cleanup.
* 6968Kartik Agaram2020-10-061-22/+124
| | | | | | | | | | | | 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.
* 6967Kartik Agaram2020-10-051-2/+70
| | | | | Function expand/contract still works, but the implementation is totally different under the hood.
* 6966Kartik Agaram2020-10-051-15/+0
|
* 6965Kartik Agaram2020-10-051-4/+4
|
* 6962Kartik Agaram2020-10-051-6/+7
| | | | | Slowly hoist cursor-word from environment to sandbox. This isn't its final destination.
* 6922Kartik Agaram2020-10-011-1/+55
|
* 6884Kartik Agaram2020-09-271-2/+2
|
* 6877Kartik Agaram2020-09-261-0/+2
| | | | Track just whether to step inside or not.
* 6876Kartik Agaram2020-09-261-3/+0
| | | | Back to commit 6872.
* 6875Kartik Agaram2020-09-261-0/+1
| | | | | Snapshot. Caching subsidiary stacks is a dead end; they're just the final iteration. We need to render all iterations.
* 6873Kartik Agaram2020-09-261-0/+2
| | | | Now saving the subsidiary stack.
* 6870Kartik Agaram2020-09-261-1/+1
| | | | | | Emit a stack of not ints but more complex objects containing the int payload. Function calls again segfaulting.
* 6869Kartik Agaram2020-09-261-5/+5
|
* 6857Kartik Agaram2020-09-251-9/+0
|
* 6854Kartik Agaram2020-09-251-4/+4
|
* 6853 - tile: initialize a test function definitionKartik Agaram2020-09-241-1/+55
|
* 6852 - tile: placeholder for lexical scopesKartik Agaram2020-09-241-0/+10
|
* 6851Kartik Agaram2020-09-241-3/+10
|