A Type-preserving Interpreter for Simply Typed Lambda-Calculus

Dependent ML (DML) is an extension of ML with a restricted form of dependent types where type index objects are drawn from some given constraint domain. In this paper, we present an implementation in DML which implements a type-preserving interpreter for the simply typed lambda-calculus. The most si...

Full description

Bibliographic Details
Main Author: Hongwei Xi
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Subjects:
DML
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.42.2708
http://www.ececs.uc.edu/~hwxi/academic/papers/TPINT.ps
id ftciteseerx:oai:CiteSeerX.psu:10.1.1.42.2708
record_format openpolar
spelling ftciteseerx:oai:CiteSeerX.psu:10.1.1.42.2708 2023-05-15T16:01:24+02:00 A Type-preserving Interpreter for Simply Typed Lambda-Calculus Hongwei Xi The Pennsylvania State University CiteSeerX Archives application/postscript http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.42.2708 http://www.ececs.uc.edu/~hwxi/academic/papers/TPINT.ps en eng http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.42.2708 http://www.ececs.uc.edu/~hwxi/academic/papers/TPINT.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/TPINT.ps text ftciteseerx 2016-01-08T03:55:39Z Dependent ML (DML) is an extension of ML with a restricted form of dependent types where type index objects are drawn from some given constraint domain. In this paper, we present an implementation in DML which implements a type-preserving interpreter for the simply typed lambda-calculus. The most significant feature of this implementation is that we can establish in the type system of DML that the implementation is type-preserving. 1 Introduction Pattern matching is an important feature in many functional programming languages such as Standard ML (Milner, Tofte, Harper, and MacQueen 1997) and Haskell (Hudak, Peyton Jones, and Wadler 1992). The mechanism that supports pattern matching is based on userdeclared datatypes, which can be model with free algebra. In practice, we often encounter situations where the declared datatypes cannot accurately capture what we really need. For instance, if what we need is a data structure for the pairs of integer lists of the same length, the best app. Text DML Unknown Harper ENVELOPE(-57.050,-57.050,-84.050,-84.050) Haskell ENVELOPE(-64.279,-64.279,-66.749,-66.749) Lambda ENVELOPE(-62.983,-62.983,-64.300,-64.300) Tofte ENVELOPE(-90.733,-90.733,-68.850,-68.850)
institution Open Polar
collection Unknown
op_collection_id ftciteseerx
language English
description Dependent ML (DML) is an extension of ML with a restricted form of dependent types where type index objects are drawn from some given constraint domain. In this paper, we present an implementation in DML which implements a type-preserving interpreter for the simply typed lambda-calculus. The most significant feature of this implementation is that we can establish in the type system of DML that the implementation is type-preserving. 1 Introduction Pattern matching is an important feature in many functional programming languages such as Standard ML (Milner, Tofte, Harper, and MacQueen 1997) and Haskell (Hudak, Peyton Jones, and Wadler 1992). The mechanism that supports pattern matching is based on userdeclared datatypes, which can be model with free algebra. In practice, we often encounter situations where the declared datatypes cannot accurately capture what we really need. For instance, if what we need is a data structure for the pairs of integer lists of the same length, the best app.
author2 The Pennsylvania State University CiteSeerX Archives
format Text
author Hongwei Xi
spellingShingle Hongwei Xi
A Type-preserving Interpreter for Simply Typed Lambda-Calculus
author_facet Hongwei Xi
author_sort Hongwei Xi
title A Type-preserving Interpreter for Simply Typed Lambda-Calculus
title_short A Type-preserving Interpreter for Simply Typed Lambda-Calculus
title_full A Type-preserving Interpreter for Simply Typed Lambda-Calculus
title_fullStr A Type-preserving Interpreter for Simply Typed Lambda-Calculus
title_full_unstemmed A Type-preserving Interpreter for Simply Typed Lambda-Calculus
title_sort type-preserving interpreter for simply typed lambda-calculus
url http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.42.2708
http://www.ececs.uc.edu/~hwxi/academic/papers/TPINT.ps
long_lat ENVELOPE(-57.050,-57.050,-84.050,-84.050)
ENVELOPE(-64.279,-64.279,-66.749,-66.749)
ENVELOPE(-62.983,-62.983,-64.300,-64.300)
ENVELOPE(-90.733,-90.733,-68.850,-68.850)
geographic Harper
Haskell
Lambda
Tofte
geographic_facet Harper
Haskell
Lambda
Tofte
genre DML
genre_facet DML
op_source http://www.ececs.uc.edu/~hwxi/academic/papers/TPINT.ps
op_relation http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.42.2708
http://www.ececs.uc.edu/~hwxi/academic/papers/TPINT.ps
op_rights Metadata may be used without restrictions as long as the oai identifier remains attached to it.
_version_ 1766397277342007296