CA2167306A1 - Multiple entry point method dispatch - Google Patents
Multiple entry point method dispatchInfo
- Publication number
- CA2167306A1 CA2167306A1 CA002167306A CA2167306A CA2167306A1 CA 2167306 A1 CA2167306 A1 CA 2167306A1 CA 002167306 A CA002167306 A CA 002167306A CA 2167306 A CA2167306 A CA 2167306A CA 2167306 A1 CA2167306 A1 CA 2167306A1
- Authority
- CA
- Canada
- Prior art keywords
- entry point
- function
- field
- point method
- multiple entry
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
Abstract
The invention is a new object construct (40) that allows a functional object in a dynamic language to be efficiently used as both a directly-invoked function and as a method in a generic function. To accomplish this use, the new object construct comprises four distinct but related contiguous storage regions designated as a header (41), a meth-info field (42), a fn-prolog field (43), and the method body (44).
When called as a component of a generic function, one entry point is at the method body or at the method-information field. When called directly, another entry point exists at the function prolog field.
When called as a component of a generic function, one entry point is at the method body or at the method-information field. When called directly, another entry point exists at the function prolog field.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US9220793A | 1993-07-15 | 1993-07-15 | |
US08/092,207 | 1993-07-15 | ||
PCT/US1994/006868 WO1995002862A1 (en) | 1993-07-15 | 1994-06-17 | Multiple entry point method dispatch |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2167306A1 true CA2167306A1 (en) | 1995-01-26 |
CA2167306C CA2167306C (en) | 2003-08-19 |
Family
ID=22232159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002167306A Expired - Lifetime CA2167306C (en) | 1993-07-15 | 1994-06-17 | Multiple entry point method dispatch |
Country Status (6)
Country | Link |
---|---|
US (1) | US6427231B1 (en) |
EP (1) | EP0708940B1 (en) |
AU (1) | AU7355494A (en) |
CA (1) | CA2167306C (en) |
DE (1) | DE69427193T2 (en) |
WO (1) | WO1995002862A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7013467B1 (en) * | 1997-12-09 | 2006-03-14 | Mci Communications Corporation | System and method for managing computer system resources using command control vectors |
US6782532B1 (en) * | 1999-10-21 | 2004-08-24 | Oracle International Corporation | Object type system for a run-time environment using generated high-order language instructions for generic functions |
US6966055B2 (en) * | 2001-03-02 | 2005-11-15 | International Business Machines Corporation | Optimizing post-link code |
US20050160414A1 (en) * | 2004-01-21 | 2005-07-21 | Nokia Corporation | System and method for dynamically adding features to software applications |
US7954110B1 (en) | 2004-06-22 | 2011-05-31 | Apple Inc. | Observing properties associated with an object in an object-oriented programming platform |
US8006250B1 (en) | 2004-06-22 | 2011-08-23 | Apple Inc. | Creating an object in an object-oriented programming platform |
US7743087B1 (en) | 2006-03-22 | 2010-06-22 | The Math Works, Inc. | Partitioning distributed arrays according to criterion and functions applied to the distributed arrays |
US20100131803A1 (en) * | 2008-11-25 | 2010-05-27 | Express Logic | Computation of stack usage in embedded computing systems |
US8997040B2 (en) * | 2010-03-24 | 2015-03-31 | Microsoft Technology Licensing, Llc | Variable closure |
US9952843B2 (en) * | 2014-05-15 | 2018-04-24 | Nvidia Corporation | Partial program specialization at runtime |
US10496378B2 (en) * | 2017-05-04 | 2019-12-03 | Microsoft Technology Licensing, Llc | Generating and executing multi-entry point functions |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4675810A (en) * | 1981-05-22 | 1987-06-23 | Data General Corp. | Digital data processing system having a uniquely organized memory system using object-based addressing and in which operand data is identified by names accessed by name tables |
US4868745A (en) * | 1986-05-30 | 1989-09-19 | Hewlett-Packard Company | Data processing system and method for the direct and indirect execution of uniformly structured object types |
US5261080A (en) * | 1987-08-21 | 1993-11-09 | Wang Laboratories, Inc. | Matchmaker for assisting and executing the providing and conversion of data between objects in a data processing system storing data in typed objects having different data formats |
US5226161A (en) * | 1987-08-21 | 1993-07-06 | Wang Laboratories, Inc. | Integration of data between typed data structures by mutual direct invocation between data managers corresponding to data types |
US5297284A (en) * | 1991-04-09 | 1994-03-22 | Microsoft Corporation | Method and system for implementing virtual functions and virtual base classes and setting a this pointer for an object-oriented programming language |
US5421016A (en) * | 1991-12-12 | 1995-05-30 | International Business Machines Corporation | System and method for dynamically invoking object methods from an application designed for static method invocation |
-
1994
- 1994-06-17 DE DE69427193T patent/DE69427193T2/en not_active Expired - Lifetime
- 1994-06-17 CA CA002167306A patent/CA2167306C/en not_active Expired - Lifetime
- 1994-06-17 WO PCT/US1994/006868 patent/WO1995002862A1/en active IP Right Grant
- 1994-06-17 AU AU73554/94A patent/AU7355494A/en not_active Abandoned
- 1994-06-17 EP EP94922442A patent/EP0708940B1/en not_active Expired - Lifetime
-
1995
- 1995-08-04 US US08/509,753 patent/US6427231B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0708940B1 (en) | 2001-05-09 |
US6427231B1 (en) | 2002-07-30 |
EP0708940A4 (en) | 1997-05-28 |
CA2167306C (en) | 2003-08-19 |
AU7355494A (en) | 1995-02-13 |
WO1995002862A1 (en) | 1995-01-26 |
EP0708940A1 (en) | 1996-05-01 |
DE69427193T2 (en) | 2001-09-20 |
DE69427193D1 (en) | 2001-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2168248A1 (en) | Antifungal Nail Solution | |
EP0608708A3 (en) | Automatic handwriting recognition using both static and dynamic parameters. | |
CA2075058A1 (en) | Novel vehicle gas mixtures and their use in medical preparations | |
GB9310609D0 (en) | An article including at least one projection | |
CA2163003A1 (en) | Solubilizer and external preparations containing the same | |
WO2001082057A3 (en) | Lock-free implementation of concurrent shared object with dynamic node allocation and distinguishing pointer value | |
CA2166062A1 (en) | The use of non-ionic surfactants in stable topical retinoid compositions | |
AU1313995A (en) | Composition of polyketone and polyolefin | |
CA2167306A1 (en) | Multiple entry point method dispatch | |
EP0645827A3 (en) | Optocoupler and process of manufacturing the same. | |
CA2107059A1 (en) | Surgical cutting instrument | |
EP0812874A4 (en) | Easy-to-break-through film | |
AU6899594A (en) | Aqueous coating composition and coating process using the same | |
AU3780393A (en) | Quinobenzoxazine, quinobenzothiazine, and pyrido-acridine antineoplastic agents | |
ZA963997B (en) | Lubricants with molybdenum containing compositions and methods of using the same. | |
DE69407596T2 (en) | AQUEOUS DISPERSIONS CONTAINING CYCLOPOLYMERS AS DISPERSING AGENTS | |
ZA948416B (en) | Biaxially oriented polyolefin film, process for its preparation and its use. | |
WO1992014077A3 (en) | Swage with after-swage dimension indicator | |
CA2136070A1 (en) | Sequential Removal of Monosaccharides from the Reducing End of Oligosaccharides and Uses Thereof | |
CA2216583A1 (en) | Levobupivacaine and its use as an anaesthetic in pregnant women | |
CA2254533A1 (en) | Treatment of pruritus | |
EP1166740A3 (en) | Vacuum mattress | |
EP0593216A3 (en) | Transmission electron microscope and its use | |
CA2174839A1 (en) | Graphic state processing | |
EP0632512A3 (en) | Oxide superconductor and method of preparing the same. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |
Effective date: 20140617 |