Dead Code Elimination through Dependent Types

. Pattern matching is an important feature in various functional programming languages such as SML, Caml, Haskell, etc. In these languages, unreachable or redundant matching clauses, which can be regarded as a special form of dead code, are a rich source for program errors. Therefore, eliminating un...

Full description

Bibliographic Details
Main Author: Hongwei Xi
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Published: Springer Verlag 1999
Subjects:
DML
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.7391
http://www.ececs.uc.edu/~hwxi/academic/papers/padl99.ps
id ftciteseerx:oai:CiteSeerX.psu:10.1.1.40.7391
record_format openpolar
spelling ftciteseerx:oai:CiteSeerX.psu:10.1.1.40.7391 2023-05-15T16:01:51+02:00 Dead Code Elimination through Dependent Types Hongwei Xi The Pennsylvania State University CiteSeerX Archives 1999 application/postscript http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.7391 http://www.ececs.uc.edu/~hwxi/academic/papers/padl99.ps en eng Springer Verlag http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.7391 http://www.ececs.uc.edu/~hwxi/academic/papers/padl99.ps Metadata may be used without restrictions as long as the oai identifier remains attached to it. http://www.ececs.uc.edu/~hwxi/academic/papers/padl99.ps text 1999 ftciteseerx 2016-09-25T00:18:10Z . Pattern matching is an important feature in various functional programming languages such as SML, Caml, Haskell, etc. In these languages, unreachable or redundant matching clauses, which can be regarded as a special form of dead code, are a rich source for program errors. Therefore, eliminating unreachable matching clauses at compiletime can significantly enhance program error detection. Furthermore, this can also lead to significantly more efficient code at run-time. We present a novel approach to eliminating unreachable matching clauses through the use of the dependent type system of DML, a functional programming language that enriches ML with a restricted form of dependent types. We then prove the correctness of the approach, which consists of the major technical contribution of the paper. In addition, we demonstrate the applicability of our approach to dead code elimination through some realistic examples. This constitutes a practical application of dependent types to functional . Text DML Unknown Haskell ENVELOPE(-64.279,-64.279,-66.749,-66.749)
institution Open Polar
collection Unknown
op_collection_id ftciteseerx
language English
description . Pattern matching is an important feature in various functional programming languages such as SML, Caml, Haskell, etc. In these languages, unreachable or redundant matching clauses, which can be regarded as a special form of dead code, are a rich source for program errors. Therefore, eliminating unreachable matching clauses at compiletime can significantly enhance program error detection. Furthermore, this can also lead to significantly more efficient code at run-time. We present a novel approach to eliminating unreachable matching clauses through the use of the dependent type system of DML, a functional programming language that enriches ML with a restricted form of dependent types. We then prove the correctness of the approach, which consists of the major technical contribution of the paper. In addition, we demonstrate the applicability of our approach to dead code elimination through some realistic examples. This constitutes a practical application of dependent types to functional .
author2 The Pennsylvania State University CiteSeerX Archives
format Text
author Hongwei Xi
spellingShingle Hongwei Xi
Dead Code Elimination through Dependent Types
author_facet Hongwei Xi
author_sort Hongwei Xi
title Dead Code Elimination through Dependent Types
title_short Dead Code Elimination through Dependent Types
title_full Dead Code Elimination through Dependent Types
title_fullStr Dead Code Elimination through Dependent Types
title_full_unstemmed Dead Code Elimination through Dependent Types
title_sort dead code elimination through dependent types
publisher Springer Verlag
publishDate 1999
url http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.7391
http://www.ececs.uc.edu/~hwxi/academic/papers/padl99.ps
long_lat ENVELOPE(-64.279,-64.279,-66.749,-66.749)
geographic Haskell
geographic_facet Haskell
genre DML
genre_facet DML
op_source http://www.ececs.uc.edu/~hwxi/academic/papers/padl99.ps
op_relation http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.7391
http://www.ececs.uc.edu/~hwxi/academic/papers/padl99.ps
op_rights Metadata may be used without restrictions as long as the oai identifier remains attached to it.
_version_ 1766397558709551104