875 karma · joined January 21, 2013
I think it might be better to go the other way, and have a pattern-matchey form generate the defmethods instead, but I need to gain tacit knowledge about it first.
Babashka tasks is fantastic too! Multi-threaded, simple, and very few surprises.
If your method only needs 1 argument then why should the other ones matter? I don't see a problem here. clj-kondo will guide people to name them as _ or _thing anyway so you don't even need to think about it.
Here are some games I made as a hobbyist with godot, in increasing complexity:
- https://escherize.com/works/magnet - https://escherize.com/evermeet - https://escherize.com/works/vampire
You can get many of the benefits but also run custom validations (dictate how two keys in a map relate to eachother, or force a be of a certain shape instead of just a string).
Here's the example from the script: [0]
[0] - https://malli.io/?value=%7B%20%3Alocale%20%22en-US%22%0A%20%...
It has bidirectional references like you discussed, and sentence level referencing, and embedding.
What's more you can even write queries [0] to ask interesting questions about your notes, like what TODOS were written within a time period, etc.
Could you explain quick-linking a little more?
- all your usual backlinks, graph views, etc.
- saves files as plaintext
- md or org mode files
- operates on / syncs / saves plaintext files
- edit locally, or sync with a git repo
- accessible from mobile (via your github repo)
So I use this with org-mode files, and on my laptop I edit files locally (I have it pointed at a git repo), which is very reliable. Then the phone simply reads from (and writes to) the same git repo.
Since it runs on git, the interoperability of the notes is really nice. If I edit the same page on 2 machines or delete a file, it's just a simple merge conflict that I can use my favorite git merge tool to fix.
Not to mention the developer is extremely active and helpful.
[0] escherize.com/w/hiccup.space
[1] escherize.com/w/cljsfiddle
{:all {:a 2} :foo {:a 4}}
Maybe namespaced keys would fit that usecaseThe language Unison has an elegant solution: hashing the ast as the version.
I know pico-8 also does this png embedding (where you can export a cart as a png, and others can load the png into their pico-8 machine).
Are there other apps that do this? It's really a cool hack!