Rationale for the design of the Ada programming language
ACM SIGPLAN Notices - Rationale for the deisgn of the Ada programming language
A One-Pass Algorithm for Overload Resolution in Ada
ACM Transactions on Programming Languages and Systems (TOPLAS)
Hi-index | 0.00 |
Various features of Ada [Ichbiah 79, Honeywell 80] make type resolution an interesting and difficult as implemented in a semantic analyzer for Ada built in 1979-80. First, a straightforward algorithm, similar to that of Ganzinger and Ripken [Ganzinger 80], is discussed. Next an optimized version of this algorithm is presented. The optimization is based on the idea that, in a tree-walking analysis in which the information developed on one branch can affect the analysis elsewhere, and where the difficulty of analysis is not uniform, analysis should be performed a little at a time wherever it is most likely to be useful rather than according to any data-independent, pre-planned method such as bottom-up or top-down. This raises the likelihood that the analysis of “simple” branches will occur early and so ease the computational cost of analyzing the more difficult branches.