I find this problem exacerbated by using a lot of primitive types, and ameliorated (though not eliminated) by wrapping things in context-specific single element structs.
More verbose (especially where, like above, the values weren't already wrapped), but catches a significant error.
It does not permit reordering arguments like the struct approach does, and doesn't help where you have multiple arguments of the same type that it is unreasonable to distinguish.
Given:
compare with More verbose (especially where, like above, the values weren't already wrapped), but catches a significant error.It does not permit reordering arguments like the struct approach does, and doesn't help where you have multiple arguments of the same type that it is unreasonable to distinguish.