The Commons

Back to Results

Patent Title: Index-based method for supporting multimethod function overloading with compile-time type checking and run-time dispatch

Assignee: IBM
Patent Number: US5696973
Issue Date: 12-09-1997
Application Number:
File Date:02-17-1995


Abstract: rogramming language systems commonly allow for the use of function calls within a body of program source code. Since function names are generally descriptive, it is sometimes the case that two different functions ("function instances") will have the same name, and be distinguishable by having either a different number of arguments ("arity"), or arguments of different types. Both at compile time and at run time, the possibility of error exists if there is a mismatch between the arguments required by a function and the arguments provided to the function by the function call. Methods and related apparatus, for use in programming language systems, are set forth which support compile-time type checking and run-time dispatch for overloaded functions in an environment supporting subtypes with multiple inheritance. At both compile time and run time, the method of the invention takes into consideration the types of all arguments of a function call, to select a proper function instance to execute, for a given function invocation. In accordance with the invention, a precedence ordering is made from among multiple function instances having the same name and arity. Furthermore, the methods contemplated by the invention identify at compile time the set of function instances which might be invoked due to subtype substitutions for the actual arguments. Since type errors on function invocations or variable assignments are usually indicative of a programming error, program reliability can be improved and faults that would otherwise result in run-time errors can be corrected through the use of the invention prior to program deployment.

Notes:

Link to USPTO

IBM Pledge dated 1/11/2005