This release adds the --raw-input / -R command-line option to jaq.
This is particularly useful to try the newly included Brainfuck interpreter (based on @itchyny's work) in examples/bf.jq. :)
Under the hood, jaq tries to avoid more clones when destructuring or updating arrays or objects.
For example, this makes [range(1000000) | [.] | .[]] | length about 6% faster.
Furthermore, expressions such as f[], which consist of some filter directly followed by a path, are now evaluated differently.
In particular, f is now evaluated lazily, whereas before, it was evaluated strictly.
This makes it possible to write a Fibonacci sequence generator as
[0,1] | recurse([.[1], add])[0]
which previously would not have terminated.
Full Changelog: v0.8.1...v0.8.2