Programming with Dependently Typed Data Structures ∗
The mechanism for declaring datatypes in functional programming languages such as ML and Haskell is of great use in practice. This mechanism, however, often suffers from its imprecision in capturing various invariants inherent in data structures. The introduction of dependent datatypes in Dependent...
Main Author: | |
---|---|
Other Authors: | |
Format: | Text |
Language: | English |
Subjects: | |
Online Access: | http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.110.5578 http://www.cs.bu.edu/~hwxi/academic/papers/DTref.pdf |
id |
ftciteseerx:oai:CiteSeerX.psu:10.1.1.110.5578 |
---|---|
record_format |
openpolar |
spelling |
ftciteseerx:oai:CiteSeerX.psu:10.1.1.110.5578 2023-05-15T16:01:46+02:00 Programming with Dependently Typed Data Structures ∗ Hongwei Xi The Pennsylvania State University CiteSeerX Archives application/pdf http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.110.5578 http://www.cs.bu.edu/~hwxi/academic/papers/DTref.pdf en eng http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.110.5578 http://www.cs.bu.edu/~hwxi/academic/papers/DTref.pdf Metadata may be used without restrictions as long as the oai identifier remains attached to it. http://www.cs.bu.edu/~hwxi/academic/papers/DTref.pdf text ftciteseerx 2016-01-07T13:40:49Z The mechanism for declaring datatypes in functional programming languages such as ML and Haskell is of great use in practice. This mechanism, however, often suffers from its imprecision in capturing various invariants inherent in data structures. The introduction of dependent datatypes in Dependent ML (DML) can partly remedy the situation, allowing the programmer to model data structures with significantly more accuracy. In this paper, we present several programming examples (e.g., implementations of random-access lists and red-black trees) to illustrate some practical use of dependent datatypes in capturing relatively sophisticated invariants in data structures. We claim that dependent datatypes can enable the programmer to implement algorithms in a manner that is more efficient, more robust and easier to understand. 1 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 |
The mechanism for declaring datatypes in functional programming languages such as ML and Haskell is of great use in practice. This mechanism, however, often suffers from its imprecision in capturing various invariants inherent in data structures. The introduction of dependent datatypes in Dependent ML (DML) can partly remedy the situation, allowing the programmer to model data structures with significantly more accuracy. In this paper, we present several programming examples (e.g., implementations of random-access lists and red-black trees) to illustrate some practical use of dependent datatypes in capturing relatively sophisticated invariants in data structures. We claim that dependent datatypes can enable the programmer to implement algorithms in a manner that is more efficient, more robust and easier to understand. 1 |
author2 |
The Pennsylvania State University CiteSeerX Archives |
format |
Text |
author |
Hongwei Xi |
spellingShingle |
Hongwei Xi Programming with Dependently Typed Data Structures ∗ |
author_facet |
Hongwei Xi |
author_sort |
Hongwei Xi |
title |
Programming with Dependently Typed Data Structures ∗ |
title_short |
Programming with Dependently Typed Data Structures ∗ |
title_full |
Programming with Dependently Typed Data Structures ∗ |
title_fullStr |
Programming with Dependently Typed Data Structures ∗ |
title_full_unstemmed |
Programming with Dependently Typed Data Structures ∗ |
title_sort |
programming with dependently typed data structures ∗ |
url |
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.110.5578 http://www.cs.bu.edu/~hwxi/academic/papers/DTref.pdf |
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.cs.bu.edu/~hwxi/academic/papers/DTref.pdf |
op_relation |
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.110.5578 http://www.cs.bu.edu/~hwxi/academic/papers/DTref.pdf |
op_rights |
Metadata may be used without restrictions as long as the oai identifier remains attached to it. |
_version_ |
1766397499171405824 |