> I like the idea a lot, but execution not so much. Frankly I'll probably end up throwing together a script in Lumo or something, that will accept Lisp expressions and feed JSON structure to them. (I'd use Fennel, but JSON has actual null while Lua... doesn't.)
This may come off as a little snarky but, you should totally give this a try and post the result on HN.
I say this because I both love jq for its functionality, but also have deep frustrations with wrangling it. I really encourage any attempts to improve it.
There's definitely room for a better jq - I would 100% try a version of it that was as simple to install, use, and just had a slightly easier to use language.
It would be very easy to do in Lua/Fennel, afaik. The problem is that Lua is so trigger-happy about `nil` that it doesn't distinguish nil's presence from absence, which won't do for JSON.
Now, I could attempt doing this in ClojureScript, but I'll get derailed to thinking about ClojureScript's inseparable conjoinery to Clojure and JVM, even if manifested in Lumo only as inexplicable boilerplate, and that gives me depression. Also Lua's start-up is faster than even bare Node.
Hy is probably the optimal choice. There's not even much to write: I can as well just spin up Hy's repl and read JSON in it. Maybe will need a few helper functions to save me from verbosity.
This may come off as a little snarky but, you should totally give this a try and post the result on HN.
I say this because I both love jq for its functionality, but also have deep frustrations with wrangling it. I really encourage any attempts to improve it.
There's definitely room for a better jq - I would 100% try a version of it that was as simple to install, use, and just had a slightly easier to use language.