CL supports a lot of parameters in a call: optional keywords, variable arguments, generics.
In this paper, a different wrap function is created for every possible way to call a function, and the proper wrap is used in the code, instead of the generic one.  Strandh, Robert, “Call-site optimization for Common Lisp,” May 2021, doi: 10.5281/ZENODO.4709958.
TODO similar to the SmartEiffel approach
MAYBE can be implemented also using feature/abstract-interpretation