Index-based method for supporting multimethod function overloadi

Patent

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

G06F 945

Patent

active

056969732

ABSTRACT:
Programming 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.

REFERENCES:
patent: 4595981 (1986-06-01), Leung
patent: 4686623 (1987-08-01), Wallace
patent: 4694420 (1987-09-01), Pettet et al.
patent: 4696003 (1987-09-01), Kerr et al.
patent: 4819160 (1989-04-01), Tanka et al.
patent: 4827404 (1989-05-01), Barstow et al.
patent: 4864569 (1989-09-01), DeLucia et al.
patent: 4885684 (1989-12-01), Austin et al.
patent: 4937739 (1990-06-01), Ernst et al.
patent: 4953084 (1990-08-01), Meloy et al.
patent: 5021947 (1991-06-01), Campbell et al.
patent: 5093914 (1992-03-01), Coplien et al.
patent: 5142681 (1992-08-01), Driscoll et al.
patent: 5307445 (1994-04-01), Dalal et al.
patent: 5381547 (1995-01-01), Flug et al.
patent: 5488727 (1996-01-01), Agrawal et al.
Beaven, Stansifer, Wetklow, A Functional Language with Classes, Computing in the 90's, The 1st Great Lakes Computer Conference Proceedings, Ref. pp. 18-20, 1989.
O'Brien, Halbert, Kilian, The Trellis Programming Environment, OOPSLA '87 Proceedings, pp. 91-102, Oct. 4-8, 1987.
Schaffert, Cooper, Bullis, Kilian, Wilpolt, An Introduction to Trellis/Owl, OOPSLA '86 Proceedings, pp. 9-16, Sep. 1986.
Lecluse and Richard, Manipulation of Structured Values in Object-Oriented Databases, GIP Altair, France pp. 113-121.
Lomet, Hardware Assistance for Type Checking, IBM Corp. Technical Disclosure Bulletin, vol. 18, No. 12, pp. 4194-4197, May 1976.
Lafore, The Waite Group's C Programming Using Turbo C++, Chapter 16, C++ and Object-Oriented Programming, pp. 667-669.
Ellis, Stroustrup, The Annotated C++ Reference Manual, Book, Chapter 10, pp.208-213.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Index-based method for supporting multimethod function overloadi does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Index-based method for supporting multimethod function overloadi, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Index-based method for supporting multimethod function overloadi will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-1616456

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.