| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Rather than invest LoC in asking for confirmation or an undo feature,
just have people restart to clear the page.
I fucking suck for how many ways I can come up with to lose data in a
text editor. It really should have been fucking obvious that clearing
the page so easily was a footgun just waiting to happen.
|
|
|
|
|
| |
Now life.tlv and gemini.tlv are also minimizing how much of the standard
library they pull in, just to be easy to read.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Teliva's model doesn't include any way to change directory. We just have
relative paths and absolute paths. Relative paths should not be able to
reach into parent directories.
The current test is a bit hacky; it also disallows directories ending in
a period. Hopefully not an issue.
|
| |
|
|
|
|
|
|
| |
The ordering is topological; nodes come before their dependencies.
Also some more helpful functions in the template for new apps.
|
|
|
|
|
| |
In particular, I merged take_out in anagrams.tlv with all_but in
graphviz.
|
|
|
|
|
| |
In the process we fix some bugs in how we compare tables and count nodes
in the graph.
|
| |
|
|
|
|
|
| |
Now the REPL isn't about deciding what to calculate, but just what nodes
to calculate it for.
|
|
|
|
| |
Stop using arr[#arr+1].
|
|
|
|
|
|
|
| |
A node's edges contain an associative array of target nodes rather than
a linear array.
This way we automatically dedup edges when we load multiple graphs.
|
|
|
|
|
| |
It's useful to be able to import dependencies for multiple packages at
once, so that we can see common dependencies.
|
| |
|
| |
|
|
|
|
|
| |
This is mostly what I want since I'm interested in parsing the output of
debtree.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This serves two purposes:
- Things get confusing if function being defined doesn't match the
definition name. Displaying the current definition helps diagnose this
situation.
- We're already able to see callers at a glance even if the cursor is
below the fold. The name of the current definition is arguably more
important in that situation.
|
| |
|
|
|
|
|
| |
I'm following https://graphviz.org/doc/info/lang.html. Just tokenization
so far.
|
| |
|
|
|
|
|
|
|
|
|
| |
Joint work with Sumeet Agarwal. In the process we discovered several
bugs in our fake window helpers for tests. Thanks Sumeet!
Previous prototypes:
- https://archive.org/details/akkartik-2min-2020-12-06
- https://merveilles.town/@akkartik/105759816342173743
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This reclaims all the slowdown in sieve.tlv, and it also is now smart
enough to detect calls to global bindings that pass through variables.
On the flip side, we lose names for non-globals. But that's not very
useful anyway in Teliva's context.
This is still not enough to detect callers through coroutines
(intervening anonymous functions), though.
|
|
|
|
| |
Partially undoes commit f2d29c22f86a88.
|
|
|
|
| |
This brings down the slowdown in sieve.tlv from 50% to 25% (15s).
|
| |
|
|
|
|
|
| |
sieve.tlv is 50% slower (18s vs 12s) with the new function call
instrumentation.
|
| |
|
|
|
|
|
|
|
|
| |
src/ldo.c now has a minimal diff with Lua 5.1.
It might be a bit slower than it was before, but not noticeably so..
This approach doesn't support indirect calls.
|
| |
|
| |
|
|
|
|
|
|
| |
It's a mess. I calculate call-graph depth one way and calculate caller
names another way. At least one of the ways fails to work with indirect
calls. Hopefully the other way works?
|
|
|
|
|
| |
We just need queues/streams for file I/O. No need to complect
concurrency concerns with them.
|
| |
|
| |
|
|
|
|
|
| |
I can't feel confident about its sandboxing story yet. And if we can't
build a file navigator, what are we even doing with it.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|