ACL--Eliminating Parameter Aliasing with Dynamic Dispatch







Deposit Papers 


Antropova, Olga (1998) ACL--Eliminating Parameter Aliasing with Dynamic Dispatch. Technical Report TR98-07, Department of Computer Science, Iowa State University.

Full text available as:Postscript
Adobe PDF


ACL --- Eliminating Parameter Aliasing with Dynamic Dispatch
Olga Antropova
In this article we present a method for eliminating reference
parameter aliases.  The goal is to allow procedure calls with
parameters being aliases, and at the same time guarantees that
procedure bodies are alias-free.  The method is to automatically
dispatch to the correct procedure body based on the particular alias
combination among actual parameters.  Automating finding the alias
combination makes writing verifiable programs verification simpler
since code to find the combination is not explicitly present in client
programs.  The number of necessary procedure bodies is usually small
which makes th eapproach practical.  Efficiency of the dispatch is
estimated to be no worse than in other languages.
Keywords:  reference parameter aliasing, global variable
aliasing, multi-body procedures, dynamic dispatch, static dispatch,
program verification, ACL language, alias-free programs, compiler
optimizations, call-by-value and call-by-result patterns.
1997 CR Categories:
D.3.1 [Programming Languages] Formal Definitions and Theory --- semantics;
D.3.3 [Programming Languages] Language Constructs and Features
--- control structures, procedures, functions, and subroutines;
D.3.4 [Programming Languages] Processors --- interpreters;
D.3.m [Programming Languages] Miscellaneous
--- dynamic dispatch, multiple dispatch, type systems;
F.3.1 [Logics and Meanings of Programs]
Specifying and Verifying and Reasoning about Programs
--- logics of programs;
F.3.1 [Logics and Meanings of Programs]
Studies of Program Constructs --- functional constructs, type structure.

Subjects:All uncategorized technical reports
ID code:00000195
Deposited by:Staff Account on 27 July 1998

Contact site administrator at: