sine [add [param 440] [sine 6 50]] 0.5
> can be rewritten without brackets using a special function called 'zz': sine 6 50
add zz 440
sine zz 0.5
> zz itself doesn't do anything. It is a placeholder that tells the function to use the argument that has been implicitely generated. (as-> (sine 6 50) zz
(add zz 440)
(sine zz 0.5))
Of course, with this example in Clojure one could use "thread-first": (-> (sine 6 50)
(add 440)
(sine 0.5))
[1]: https://clojure.org/guides/threading_macros
If undocumented workers are finding productive work in an economy with low unemployment then the problem is that the government is not facilitating them gaining legal status.