See this document in CiteSeerX!

Distinguishing Data Structures and Functions: the Constructor Calculus and Functorial Types (2001)  (Make Corrections)  (14 citations)
C. Barry Jay
Lecture Notes in Computer Science



  Home/Search   Context   Related

 
View or download:
uts.edu.au/~cbj/Pu...ructor_calculus.ps
Cached:  PS.gz  PS  PDF   Image  Update  Help

From:  uts.edu.au/~cbj/Publications/ (more)
(Enter author homepages)

Rate this article: (best)
  Comment on this article  
(Enter summary)

Abstract: The expressive power of functional programming can be improved by identifying and exploiting the characteristics that distinguish data types from function types. Data types support generic functions for equality, mapping, folding, etc. that do not apply to functions. Such generic functions require case analysis, or pattern-matching, where the branches may have incompatible types, e.g. products or sums. This is handled in the constructor calculus where specialisation of program extensions... (Update)

Cited by:   More
The Polymorphic Imperative - Jay Lu And   (Correct)
Methods as Pattern-Matching Functions - Barry Jay University (2004)   (Correct)
The Constructor Calculus - Jay (2003)   (Correct)

Active bibliography (related documents):   More   All
1.3:   Distinguishing Data Structures and Functions: the Constructor.. - Jay (2001)   (Correct)
0.8:   Type-Secure Meta-Programming - Christopher Bentley Dornan (1998)   (Correct)
0.6:   Functorial Lambda-Calculus - Jay School Of   (Correct)

Similar documents based on text:   More   All
0.5:   Higher-Order Patterns - Jay (2004)   (Correct)
0.4:   Pure Pattern Calculus - Jay, Kesner (2005)   (Correct)
0.4:   Polymorphic Pattern Calculus - Jay   (Correct)

Related documents from co-citation:   More   All
7:   Functional Polytypic Programming (context) - Jansson - 2000
7:   Science of Computer Programming (context) - Jay, for - 1995
6:   PolyP - a polytypic programming language extension - Jansson, Jeuring - 1997

BibTeX entry:   (Update)

C. B. Jay. Distinguishing data structures and functions: The constructor calculus and functorial types. In S. Abramsky, ed., Proc. of 5th Int. Conf. on Typed Lambda Calculi and Appl., TLCA'01, vol. 2044 of Lect. Notes in Comput. Sci., pp. 217-239. Berlin, 2001. http://citeseer.ist.psu.edu/jay01distinguishing.html   More

@article{ jay01distinguishing,
    author = "C. Barry Jay",
    title = "Distinguishing Data Structures and Functions: The Constructor Calculus and Functorial Types",
    journal = "Lecture Notes in Computer Science",
    volume = "2044",
    pages = "217--??",
    year = "2001",
    url = "citeseer.ist.psu.edu/jay01distinguishing.html" }
Citations (may not include all citations):
809   A theory of type polymorphism in programming (context) - Milner - 1978
261   Dynamic typing in polymorphic languages - Abadi, Cardelli et al. - 1995
210   Functional programming with bananas (context) - Meijer, Fokkinga et al. - 1991
163   Commentary on Standard ML (context) - Milner, Tofte - 1991
126   Type inference with polymorphic recursion - Henglein - 1993
112   Initial algebra semantics and continuous algebras (context) - Goguen - 1977
109   PolyP - a polytypic programming language extension - Jansson, Jeuring - 1997
97   and parametric polymorphism (context) - Reynolds, abstraction - 1985
64   Science of Computer Programming (context) - Jay, for - 1995
63   A new approach to generic functional programming - Hinze - 2000
46   Journal of Functional Programming (context) - Jay, Belle et al. - 1998
39   The effective topos (context) - Hyland - 1982
20   Tracts in Theoretical Computer Science (context) - Girard, Lafont et al. - 1989
16   Functional Polytypic Programming (context) - Jansson - 2000
15   Polynomial polymorphism - Jay - 1995
14   Distinguishing data structures and functions: the constructo.. - Jay - 2000
12   Mathematical Center Amsterdam (context) - Klop, Systems - 1980
11   Data categories - Jay - 1996
10   List-arithmetic distributive categories: locoi (context) - Cockett - 1990
10   University of Calgary (context) - Cockett, Fukushima et al. - 1992
7   Workshop on Generic Programming: Marstrand (context) - Backhouse, Sheard - 1998
2   Report on the functional programming language Haskell: versi.. (context) - Augustsson - 1997



The graph only includes citing articles where the year of publication is known.


Documents on the same site (http://www-staff.it.uts.edu.au/~cbj/Publications/):   More
Shape Analysis for Parallel Computing - Jay (1995)   (Correct)
The Pattern Calculus - Jay (2003)   (Correct)
Partial Evaluation of Shaped Programs: Experience with FISh - Jay (1999)   (Correct)

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC