@inproceedings{GRDC03,
author = "Hongwei Xi and Chiyan Chen and Gang Chen",
title = {Guarded Recursive Datatype Constructors},
booktitle = "Proceedings of the 30th ACM SIGPLAN Symposium on Principles of Programming Languages",
year = 2003,
month = "January",
address = "New Orleans",
pages = "224-235",
abstrace = {{
We introduce a notion of guarded recursive (g.r.) datatype constructors,
generalizing the notion of recursive datatypes in functional programming
languages such as ML and Haskell. We address both theoretical and practical
issues resulted from this generalization. On one hand, we design a type
system to formalize the notion of g.r. datatype constructors and then prove
the soundness of the type system. On the other hand, we present some
significant applications (e.g., implementing objects, implementing staged
computation, etc.) of g.r. datatype constructors, arguing that
g.r. datatype constructors can have far-reaching consequences in
programming. The main contribution of the paper lies in the recognition
and then the formalization of a programming notion that is of both
theoretical interest and practical use.
}}
}