| S. Berardi. Pruning simply-typed lambda-terms. Journal of Logic and Computation, 6(5):663-- 681, 1996. |
....2.2 Language Syntax We apply our technique to a first order typed functional language with a strict semantics. The syntax of our source language is given in Figure 1. Programmers need to annotate properties of binary operators used in the program. For example, annotation #(Int , [0, 1]) for function definition poly is needed. The annotation tells the system, for all integers, operators and can be used and [ satisfies the extended ring property. Typ Type Cons Constants c Con Data Constructors Var Variables Op Binary Primitive Operators Ann ....
....can be applied to functions of the same form (e.g. parallel code mis and g1 in Section 4.2) and tupling calculations [4, 10] However, these enhancement are not the focus of this paper. 4.1 Conditional Form The following function, f 5 , traverses a list and returns an integer. #(Int , [0, 1]) f 5 (a : x ) if (a 5) then a f 5 x else a f 5 x Let us assume that # = a N , x N . The highlight of PType inference of the RHS of f 5 is illustrated below: if (a 5) then a f 5 x else a f 5 x , #) a 5) #) N, a f 5 x, app( #) R# 1 , #1 ) ....
[Article contains additional citation context not shown here]
Stefano Berardi. Pruning simply-typed lambda-terms. Journal of Logic and Computation, 6(5):663--681, 1996.
....to the final result of the computation are detected and deleted. Dead code can arise during the compilation process due to program transformations and during the evolution of programs. Program extracts from proofs also tend to contain a lot of code irrelevant to the result of the computation [2, 7, 3, 4, 17, 20]. In this paper, we investigate dependence analysis in the context of dead code elimination, bearing in mind it is readily applicable to the problems mentioned above. We give a method for dead code elimination for typed # calculus based languages, such as ML and typed intermediate languages for ....
....is di#erent as well. To our knowledge, there is no work on dependence analysis using set constraints. Another group of researchers became interested in dead code elimination in trying to optimize programs extracted from proofs, which usually contain a lot of dead code. Representative examples are [17, 3, 4, 7]. Although types are used, the type systems are complicated and are not readily extendable to di#erent problems, since typing rules are tailored to one specific problem. Similarly, type inference is non standard and complicated. A more complete discussion can be found in [8] 7 Conclusion In ....
Berardi, S. Pruning simply typed lambda terms. Journal of Symbolic Computation, to appear.
....see [19] or via lazy (implicit) types, see [15] In this paper we pursue the first approach, reducing the annotated type inference problem to the solution of a system of inequalities between annotations on types. Type analysis is also used in the area of program extraction from formal proof, see [7, 6, 23, 3, 5, 21]. The programs extracted from proofs are usually very inefficient, as they contain parts that are useless for the computation of the final result; they therefore require some sort of simplification. One of the more effective simplification techniques is the pruning , and has been developed by ....
....extracted from proofs are usually very inefficient, as they contain parts that are useless for the computation of the final result; they therefore require some sort of simplification. One of the more effective simplification techniques is the pruning , and has been developed by Berardi, see [3]. In this technique useless terms (also called dead code ) are discovered by analyzing the type of terms. The 1 method was improved in [4] see also [5] Chap. 4) with the use of type inclusion: an application is well typed if the argument has a type included in the input type of the ....
[Article contains additional citation context not shown here]
S. Berardi. Pruning Simply Typed Lambda Terms. Journal of Logic and Computation, 6(5):663--681, 1996.
No context found.
S. Berardi. Pruning simply-typed lambda-terms. Journal of Logic and Computation, 6(5):663-- 681, 1996.
No context found.
Berardi, S.: 1996, `Pruning Simply Typed Lambda-Terms'. Journal of Logic and Computation 6(5), 663--681.
No context found.
S. Berardi. Pruning simply typed lambda terms. Journal of Logic and Computation, 125(2):663--681, 15 March 1996.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC