TODO
t() :: %Vow.Func{form: String.t(), function: (term() -> boolean())}
f((term() -> boolean())) :: Macro.t()