14 research outputs found
ACL--Eliminating Parameter Aliasing with Dynamic Dispatch
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
ACL--Eliminating Parameter Aliasing with Dynamic Dispatch
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.Copyright © 1998 by Olga Antropova. Permission to make copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not distributed for profit or commercial advantage.</p
ACL - Eliminating Parameter Aliasing with Dynamic Dispatch
We have implemented a new method for eliminating reference parameter aliases. This method allows procedure calls with overlapping call-by-reference parameters, but at the same time guarantees that procedure bodies are alias-free. The method involves writing multiple bodies for a procedure: one per aliasing combination. Calls are automatically dispatched to the appropriate procedure body based on the particular alias combination among the actual parameters and imported global variables. This makes writing verifiable client code simpler, since such code does not need to determine the aliasing combination before the procedure is called. The efficiency of dispatch to these bodies is no worse than hand-coded determination of the aliasing combination would be in other languages. In our experience, the number of necessary procedure bodies is usually small, which makes the approach practical. Forcing programmers to write one body for each aliasing combination also makes them consider each case..
ACL -- Eliminating Parameter Aliasing with Dynamic Dispatch
We have designed and prototyped a new approach for eliminating reference parameter aliases. This approach allows procedure calls with overlapping call-by-reference parameters, but guarantees that procedure bodies are alias-free. It involves writing multiple bodies for a procedure: up to one body for each possible aliasing combination. Procedure calls are dispatched to the appropriate procedure body based on the alias combination that occurs among the actual parameters and imported global variables; errors are generated if there is no corresponding body. This approach makes writing verifiable client code simpler, since clients do not need to write code to determine the aliasing combination among actuals. Furthermore, since procedure bodies are free of aliases, their static analysis and verification is easier. The prototype language we have designed to explore these ideas incorporates some features to limit the number of alternative procedure bodies that a programmer must write.Copyright © 1998, 1999 by Gary T. Leavens and Olga Antropova. All rights reserved.</p
ACL---Eliminating Parameter Aliasing with Dynamic Dispatch
We have implemented a new method for eliminating reference parameter aliases. This method allows procedure calls with overlapping call-by-reference parameters, but at the same time guarantees that procedure bodies are alias-free. The method involves writing multiple bodies for a procedure: one per aliasing combination. Calls are automatically dispatched to the appropriate procedure body based on the particular alias combination among the actual parameters and imported global variables. This makes writing verifiable client code simpler, since such code does not need to determine the aliasing combination before the procedure is called. The efficiency of dispatch to these bodies is no worse than hand-coded determination of the aliasing combination would be in other languages. In our experience, the number of necessary procedure bodies is usually small, which makes the approach practical. Forcing programmers to write one body for each aliasing combination also makes them consider each case of aliasing among the parameters and globals, making it more likely that the procedure is correctly implemented.Copyright © 1998 by Olga Antropova and Gary T. Leavens. All rights reserved.</p
ACL - Eliminating parameter aliasing with dynamic dispatch
. In this article we present a method of eliminating reference parameter aliases. The goal is to allow procedure calls with parameters being aliases, and at the same time guarantee 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 the approach practical. Efficiency of the dispatch is estimated to be no worse then in other languages. 1. Introduction When a location can be referenced by several names those names are called aliases. The presence of aliases and mutation makes it more difficult to write correct programs and to reason about their correctness ([CM88], [HW73]). Some compiler optimizations become impossible in ..
ACL -- Eliminating Parameter Aliasing with Dynamic Dispatch
We have designed and prototyped a new approach for eliminating reference parameter aliases. This approach allows procedure calls with overlapping call-by-reference parameters, but guarantees that procedure bodies are alias-free. It involves writing multiple bodies for a procedure: up to one body for each possible aliasing combination. Procedure calls are dispatched to the appropriate procedure body based on the alias combination that occurs among the actual parameters and imported global variables; errors are generated if there is no corresponding body. This approach makes writing verifiable client code simpler, since clients do not need to write code to determine the aliasing combination among actuals. Furthermore, since procedure bodies are free of aliases, their static analysis and verification is easier. The prototype language we have designed to explore these ideas incorporates some features to limit the number of alternative procedure bodies that a programmer must write
New Insight into Phase Transitions of Porous Glass-Based Ferroelectric Nanocomposites
The results of XRD, FTIR and differential scanning calorimetry (DSC) studies of empty porous silica matrices filled with binary mixtures of K1–xAgxNO3 (x = 0.05, 0.10) are reported in comparison with those obtained for bulk salts in the temperature range of structural phase transitions. Scanning electron microscopic data of the studied empty macroporous and microporous glasses confirmed differences in the pore morphology associated with the presence of silica gel. Accordingly, XRD and FTIR samples contain crystalline phase of KNO3 and AgNO3. The results of calorimetric investigation of porous glasses filled with binary mixtures of K1–xAgxNO3 (x = 0.05, 0.10) are presented. The results show that in the K1–xAgxNO3 nanocomposites, anomalies associated with phase transitions were detected. An influence of the mean value of pores sizes on the ferroelectric phase transition temperatures of K1–xAgxNO3 nanocrystals embedded into the porous matrices was determined. The impact of pore space structure on the phase transitions of ferroics nanocomposites was discussed