1998
DOI: 10.21236/ada358589
|View full text |Cite
|
Sign up to set email alerts
|

Transparent and Opaque Interpretations of Datatypes

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2

Citation Types

0
2
0

Year Published

2001
2001
2001
2001

Publication Types

Select...
1

Relationship

1
0

Authors

Journals

citations
Cited by 1 publication
(2 citation statements)
references
References 0 publications
0
2
0
Order By: Relevance
“…While this solves the efficiency problem with the opaque interpretation, Crary et al have pointed out that it introduces a separate problem, namely that certain kinds of valid Standard ML programs fail to typecheck [4]. For example, suppose that the argument signature of a functor F includes the specification of a type t1 and a datatype t2 that refers to it: functor F (X: sig type t1 datatype t2 = C | D of int * t1 ... end) = ... Then, suppose F is applied to a pair of mutually recursive datatypes t1 and t2 defined as follows: datatype t1 = A | B of string * t2 and t2 = C | D of int * t1…”
Section: Transparent and Opaque Interpretations Of Datatypesmentioning
confidence: 99%
See 1 more Smart Citation
“…While this solves the efficiency problem with the opaque interpretation, Crary et al have pointed out that it introduces a separate problem, namely that certain kinds of valid Standard ML programs fail to typecheck [4]. For example, suppose that the argument signature of a functor F includes the specification of a type t1 and a datatype t2 that refers to it: functor F (X: sig type t1 datatype t2 = C | D of int * t1 ... end) = ... Then, suppose F is applied to a pair of mutually recursive datatypes t1 and t2 defined as follows: datatype t1 = A | B of string * t2 and t2 = C | D of int * t1…”
Section: Transparent and Opaque Interpretations Of Datatypesmentioning
confidence: 99%
“…Under the simple equivalence rule for iso-recursive constructors that was given in Section 4.2.1, there is no way to equate the actual and required definitions for t2, so the functor application is not valid under the transparent interpretation of datatypes. One way to remedy this problem, as detailed by Crary et al [4], is to use what they refer to as Shao's equation (after its original implementation by Shao in the FLINT compiler). For iso-recursive types, the equation can be written as follows:…”
Section: Transparent and Opaque Interpretations Of Datatypesmentioning
confidence: 99%