April 2002

Multimethods and Function Overloading

Function Overloading

Function Specialization

Class Specialization

Multiple Inheritance

    1. The parent classes could be prioritized, like in CLOS or Python. This does remove the ambiguity over which function to execute but can lead to unintended consequences. The methods can have behavior that is hard to find in code.
    2. All methods from each parent class can be run. Many times multiple inheritance is used to combine independent classes, and running the class methods independently could be smart to do. This is an interesting scenario that could very well be the best solution. I am not sure though.
    3. The KMAL chooses the safest route: If there exists an ambiguous function call somewhere in the system, then the KMAL will indicate what method domains need clarification. This error is often a compile-time error, so it is only a little more work for the programmer. The benefit, however, is a guarantee that the programmer has considered, and clarified, the ambiguous methods..

Conclusion


April 2002: First writing