Proceedings of the ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation 1998
DOI: 10.1145/277650.277732
|View full text |Cite
|
Sign up to set email alerts
|

Eliminating array bound checking through dependent types

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

1
118
0

Year Published

2001
2001
2013
2013

Publication Types

Select...
6
2

Relationship

0
8

Authors

Journals

citations
Cited by 194 publications
(119 citation statements)
references
References 10 publications
1
118
0
Order By: Relevance
“…Our present notion of refinement types has its roots in the indexed types of Xi and Pfenning [26], wherein data types' ranges are restricted by indices, analogous to our refinement predicates, drawn from a decidable domain; in the example case explored by Xi and Pfenning, types were indexed by terms from Presburger arithmetic. Since then, several approaches to developing richer refinement type systems and accompanying methods for type checking have been developed.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations
“…Our present notion of refinement types has its roots in the indexed types of Xi and Pfenning [26], wherein data types' ranges are restricted by indices, analogous to our refinement predicates, drawn from a decidable domain; in the example case explored by Xi and Pfenning, types were indexed by terms from Presburger arithmetic. Since then, several approaches to developing richer refinement type systems and accompanying methods for type checking have been developed.…”
Section: Related Workmentioning
confidence: 99%
“…Greenberg et al [1] gives a rigorous treatment of the metatheoretic properties of such a refinement type system. Refinement types have been applied to the verification of a variety of program properties [26,7,2,10]. In the most closely related work to our own, Kawaguchi et al [16] introduce recursive and polymorphic refinements for data structure properties.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Other languages, such as ML and Java, perform the check, but at run time, and at the cost of run time performance. Some researchers propose to perform this check at compile time [14], but the technique requires the programer to insert annotations in the source code, since modern languages do not include array bounds in their type systems.…”
Section: Introductionmentioning
confidence: 99%
“…Type systems have been used to verify algebraic data types [10], array bounds [46], and mutable structures [48], usually enforcing weaker properties than in our case. Recently, researchers have developed a promising approach [34] based on separation logic [17] that can verify shape and content properties of imperative recursive data structures (although it has not been applied to hash tables yet).…”
Section: Related Workmentioning
confidence: 99%