jaq
jaq copied to clipboard
New update semantics for `..` (recursion).
This PR changes the semantics of .. on the left-hand side of updates.
# `.. |= f` expands to ...
def recurse: ., (.[]? | recurse); recurse |= f # before
def recurse: (.[]? | recurse), .; recurse |= f # after
This prevents stack overflows that could previously occur (#139, #235).