about summary refs log tree commit diff stats
path: root/anagrams.tlv
Commit message (Collapse)AuthorAgeFilesLines
* helper: countKartik K. Agaram2022-03-271-2/+18
|
* graphviz: for basic stats, show all nodes orderedKartik K. Agaram2022-03-191-0/+47
| | | | | | The ordering is topological; nodes come before their dependencies. Also some more helpful functions in the template for new apps.
* standardize common helpers across all appsKartik K. Agaram2022-03-191-19/+99
| | | | | In particular, I merged take_out in anagrams.tlv with all_but in graphviz.
* graphviz: draft notion of nodes in 'focus'Kartik K. Agaram2022-03-181-1/+12
| | | | | Now the REPL isn't about deciding what to calculate, but just what nodes to calculate it for.
* idiom: table.insert for appendingKartik K. Agaram2022-03-181-2/+2
| | | | Stop using arr[#arr+1].
* graphviz: don't interpret substrings as regexesKartik K. Agaram2022-03-181-0/+4
|
* break.tlv: nascent live-updating stack languageKartik K. Agaram2022-03-171-0/+2
| | | | | | | | | 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
* use method syntax where possibleKartik K. Agaram2022-03-061-7/+7
| | | | | | Perhaps this is a bad idea. It feels arbitrary, what methods Lua happens to include in string and table objects without having to go through the respective modules.
* reconcile all apps with template.tlvKartik K. Agaram2022-03-061-23/+7
| | | | | | They may take more or less from it (sieve.tlv in particular takes nothing since call depth doesn't help at all there), but what they take is in the right order so that you can compare across apps.
* anagrams.tlv: now fully responsiveKartik K. Agaram2022-03-051-13/+115
| | | | | | | | | If we press a key the computation now restarts instantly. There's no fiction of multi-threading in Teliva. If the application doesn't work right, it beach-balls. If it doesn't beach-ball under normal circumstances you're more certain it'll never beach-ball. It's more work up-front, but there's less variability in outcomes.
* anagrams.tlv: slightly more responsiveKartik K. Agaram2022-03-051-1/+11
| | | | | | | Now we cancel screen-painting if any key is pressed. However it looks like just computing the list of anagrams can take a long time.
* distinguish between window global and argKartik K. Agaram2022-03-021-5/+5
|
* starting to make Teliva apps more testableKartik K. Agaram2022-02-271-7/+7
| | | | | | | | | | Tasteful apps should only perform side-effects through 'window' arguments rather than the 'curses' module directly. It's ok however to read constants like curses.A_NORMAL or curses.stdscr(). There are some limitations, unfortunately. Ncurses wasn't designed with testability in mind. For example, there's no way to curs_set or assume_default_colors without the 'curses' module. Oh well.
* a little program for kids: anagrams of namesKartik K. Agaram2022-02-211-0/+336