ERA

Download the full-sized PDF of Inheritance Management and Method Dispatch in Reflexive Object-Oriented LanguagesDownload the full-sized PDF

Analytics

Share

Permanent link (DOI): https://doi.org/10.7939/R3057CW1X

Download

Export to: EndNote  |  Zotero  |  Mendeley

Communities

This file is in the following communities:

Computing Science, Department of

Collections

This file is in the following collections:

Technical Reports (Computing Science)

Inheritance Management and Method Dispatch in Reflexive Object-Oriented Languages Open Access

Descriptions

Author or creator
Holst, Wade
Additional contributors
Subject/Keyword
method dispatch
inheritance management
reflexive object-oriented languages
Type of item
Computing Science Technical Report
Computing science technical report ID
TR96-27
Language
English
Place
Time
Description
Technical report TR96-27. A collection of algorithms and data structures are presented which represent a generalized framework for inheritance management and method dispatch in reflexive, dynamically typed, single-receiver languages with type/implementation-paired multiple inheritance. By storing a small amount of information, the algorithms can incrementally maintain the entire dispatch environment during the four fundamental environment modification requests - adding/removing selectors to/from classes and adding/removing class hierarchy links. By merging inheritance management, inheritance conflict detection and method dispatch calculation, the algorithms are computationally efficient, and can be used to maintain dispatch information even in a reflexive environment. The algorithms are applicable to all table-based method dispatch techniques and require the use of only a few dispatch-specific functions. A group of object-oriented classes are used to implement both the technique-independent and technique-dependent algorithms, providing a complete framework for table-based method dispatch. Although general enough to apply to reflexive languages, the framework is also useful in statically typed languages, as it incrementally computes hierarchy information needed by the compiler to establish which method addresses can be uniquely identified during compilation. This allows compile-time optimizations instead of a runtime table look-up. The framework can and will be extended to multi-method languages.
Date created
1996
DOI
doi:10.7939/R3057CW1X
License information
Creative Commons Attribution 3.0 Unported
Rights

Citation for previous publication

Source
Link to related item

File Details

Date Uploaded
Date Modified
2014-04-29T17:35:33.819+00:00
Audit Status
Audits have not yet been run on this file.
Characterization
File format: pdf (Portable Document Format)
Mime type: application/pdf
File size: 839479
Last modified: 2015:10:12 17:15:07-06:00
Filename: TR96-27.pdf
Original checksum: 1d1067c0ea92d94c1843ab21cf5aa9b7
Well formed: true
Valid: true
Page count: 54
Activity of users you follow
User Activity Date