In v3, all FunctionModels come with a built-in assertion that checks if a function is not called with more parameters that it can handle. I propose to remove this assertion in v4, and make it opt-in on specific function models instead.
Arguments:
this is a quite important perf penalty that applies to all function models, and is difficult / non-intuitive to opt-out
the service provided by this assertion is not very valuable, since this can be statically analysed, and is actually already reported by common editors and linters
the assertion sometimes report false positives when the function refer to the arguments variable for example
this is the only built-in assertion for the whole library, so dropping this edge case helps making the library smaller and more consistent
In v3, all FunctionModels come with a built-in assertion that checks if a function is not called with more parameters that it can handle. I propose to remove this assertion in v4, and make it opt-in on specific function models instead.
Arguments:
arguments
variable for example