    "Given a function with parameter types
     `P1`, `P2`, ..., `Pn`, return a function with a single
     parameter of tuple type `[P1, P2, ..., Pn]`.

     That is, if `fun` has type `W(X,Y,Z)` then `unflatten(fun)`
     has type `W([X,Y,Z])`."
    see(`function flatten`)
    shared native Return unflatten<Return,Args>(Callable<Return,Args> flatFunction)(Args args)
            given Args satisfies Anything[];