->
(-> expr step...)
Threads expr through each step: a list step gets the value inserted as its second
element, a bare name or keyword is called/read with the value, and the last step's
value is the answer. Lowers to the threaded call rewritten as datums. A step over a
collection literal signals (collections are not functions here).