CPS Transform and Type Derivations in Dependent ML (Extended Abstract)

Dependent ML is a functional programming language that extends ML with a restricted form of dependent types. In this paper, we study a call-by-value continuation-passing style (CPS) transform for ML 0 , a core of DML that excludes eects. In particular, we demonstrate how the type derivation of an ex...

Full description

Bibliographic Details
Main Authors: Hongwei Xi, Carsten Schürmann
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Published: 2001
Subjects:
DML
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.24.9075
http://www.cs.yale.edu/~carsten/papers/cpsdml.ps.gz
id ftciteseerx:oai:CiteSeerX.psu:10.1.1.24.9075
record_format openpolar
spelling ftciteseerx:oai:CiteSeerX.psu:10.1.1.24.9075 2023-05-15T16:01:28+02:00 CPS Transform and Type Derivations in Dependent ML (Extended Abstract) Hongwei Xi Carsten Schürmann The Pennsylvania State University CiteSeerX Archives 2001 application/postscript http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.24.9075 http://www.cs.yale.edu/~carsten/papers/cpsdml.ps.gz en eng http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.24.9075 http://www.cs.yale.edu/~carsten/papers/cpsdml.ps.gz Metadata may be used without restrictions as long as the oai identifier remains attached to it. http://www.cs.yale.edu/~carsten/papers/cpsdml.ps.gz text 2001 ftciteseerx 2016-01-07T19:09:36Z Dependent ML is a functional programming language that extends ML with a restricted form of dependent types. In this paper, we study a call-by-value continuation-passing style (CPS) transform for ML 0 , a core of DML that excludes eects. In particular, we demonstrate how the type derivation of an expression in ML 0 can be transformed into the type derivation of the CPS transform of the expression, lifting CPS transform from the level of expressions to the level of type derivations. This work serves as the rst step in our attempt to build a type-preserving compiler for DML by compiling the type derivation of a program instead of the program itself. Text DML Unknown
institution Open Polar
collection Unknown
op_collection_id ftciteseerx
language English
description Dependent ML is a functional programming language that extends ML with a restricted form of dependent types. In this paper, we study a call-by-value continuation-passing style (CPS) transform for ML 0 , a core of DML that excludes eects. In particular, we demonstrate how the type derivation of an expression in ML 0 can be transformed into the type derivation of the CPS transform of the expression, lifting CPS transform from the level of expressions to the level of type derivations. This work serves as the rst step in our attempt to build a type-preserving compiler for DML by compiling the type derivation of a program instead of the program itself.
author2 The Pennsylvania State University CiteSeerX Archives
format Text
author Hongwei Xi
Carsten Schürmann
spellingShingle Hongwei Xi
Carsten Schürmann
CPS Transform and Type Derivations in Dependent ML (Extended Abstract)
author_facet Hongwei Xi
Carsten Schürmann
author_sort Hongwei Xi
title CPS Transform and Type Derivations in Dependent ML (Extended Abstract)
title_short CPS Transform and Type Derivations in Dependent ML (Extended Abstract)
title_full CPS Transform and Type Derivations in Dependent ML (Extended Abstract)
title_fullStr CPS Transform and Type Derivations in Dependent ML (Extended Abstract)
title_full_unstemmed CPS Transform and Type Derivations in Dependent ML (Extended Abstract)
title_sort cps transform and type derivations in dependent ml (extended abstract)
publishDate 2001
url http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.24.9075
http://www.cs.yale.edu/~carsten/papers/cpsdml.ps.gz
genre DML
genre_facet DML
op_source http://www.cs.yale.edu/~carsten/papers/cpsdml.ps.gz
op_relation http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.24.9075
http://www.cs.yale.edu/~carsten/papers/cpsdml.ps.gz
op_rights Metadata may be used without restrictions as long as the oai identifier remains attached to it.
_version_ 1766397306216644608