x ([: u v) y
expands to u (x v y)
, but so does x u@:v y
. @:
strictly supersedes [:
in Special Codes. Is there any reason to use [:
over @:
?
Some people prefer ([: f g)
to f@:g
for readability, perhaps because it is more spread out, although f @: g
accomplishes the same spacing without parentheses.
I am pretty sure that I have seen cases where it made a difference to the outcome, but I can't remember them now. Perhaps others will be able to come up with examples where they differ.