((function cross
(signature vec3
(parameters
(declare (in) vec3 a)
(declare (in) vec3 b))
((return (expression vec3 -
(expression vec3 * (swiz yzx (var_ref a)) (swiz zxy (var_ref b)))
(expression vec3 * (swiz zxy (var_ref a)) (swiz yzx (var_ref b)))))))
))