(Enter summary)
Abstract: Structural polymorphism is a generic programming technique known within the functional programming community under the names of polytypic or datatype-generic programming. In this thesis we show that such a technique conflicts with the principle of data abstraction and propose a solution for reconciliation. More concretely, we show that popular polytypic extensions of the functional programming language Haskell, namely, Generic Haskell and Scrap your Boilerplate have their genericity limited by... (Update)
Active bibliography (related documents): More All
0.6: The Gist of Side Effects in Pure Functional Languages - Pablo Nogueira Http
(Correct)
0.4: Proof Methods for Corecursive Programs - Gibbons, Hutton (2005)
(Correct)
0.4: TypeCase: A Design Pattern for Type-Indexed Functions - Bruno Oliveira And (2005)
(Correct)
Similar documents based on text:
6.0: Unknown -
(Correct)
BibTeX entry: (Update)
@phdthesis{ pni:thesis:06,
author = {Pablo {Nogueira Iglesias}},
title = {Polytypic Functional Programming and Data abstraction},
school = {School of Computer Science and Information Technology, University of Nottingham, UK},
year = 2006,
month = {January},
url = {citeseer.ist.psu.edu/nogueiraiglesias06polytypic.html} }
Citations (may not include all citations):
2157
Design Patterns - Elements of Reusable Object Oriented Softw.. (context) - Gamma, Helm et al. - 1995
333
Introduction to Functional Programming (context) - Bird, Wadler - 1988
185
The Calculi of Lambda Conversion (context) - Church - 1941
174
Springer-Verlag (context) - Abadi, Cardelli et al. - 1996
173
An initial algebra approach to the specification (context) - Goguen, Thatcher et al. - 1979
128
On understanding types (context) - Cardelli, Wegner - 1985
90
Type systems
- Cardelli - 2004
77
Introduction to Object-Oriented Programming (context) - Budd - 2002
75
Interpretation Fonctionnelle et Elimination des Coupures de .. (context) - Girard - 1972
52
Generic programming -- an introduction (context) - Backhouse, Jansson et al. - 1999
45
Nested datatypes
- Bird, Meertens - 1998
44
Abstract data types and the development of data structures (context) - Guttag - 1977
43
Object-Oriented Programming: A Unified Foundation (context) - Castagna - 1997
40
The Lambda Calculus: Its Syntax and Semantics (context) - Barendregt - 1984
38
Computability: An Introduction to Recursive Function Theory (context) - Cutland - 1980
30
International Series in Computer Science (context) - Bird, de Moor et al. - 1997
26
Partial abstract types (context) - Broy, Wirsing - 1982
25
Higher order functions considered unnecessary for higher ord..
- Goguen - 1988
25
Generalised folds for nested datatypes
- Bird, Paterson - 1999
16
Abstract value constructors (context) - Aitken, Reppy - 1992
15
A lightweight implementation of generics and dynamics
- Cheney, Hinze - 2002
14
Topoi: The Categorial Analysis of Logic (context) - Goldblatt - 1979
14
A gentle introduction to category theory --- the calculation.. (context) - Fokkinga - 1992
9
A functional correspondence between evaluators and abstract .. (context) - Ager, Biernacki et al. - 2003
8
When is a function a fold or an unfold (context) - Gibbons, Hutton et al. - 2001
8
Active patterns
- Erwig - 1996
8
Curry and Robert Feys (context) - Haskell - 1968
7
Enforcing security policies via types
- Gorla, Pugliese - 2003
6
polymorphic lambda calculu with typetype
- Cardelli, calculus et al. - 1986
6
the existence of initial models for partial (context) - Astesiano, Cerioli - 1989
5
International Series in Computer Science (context) - Field, Harrison - 1993
5
Category theory as coherently constructive lattice theory
- Backhouse, Bijsterveld et al. - 1998
4
Glasgow University (context) - Blott, PhD - 1991
3
Chasing bottoms -- A case study in program verification in t..
- Danielsson, Jansson - 2004
3
and freeness: An introduction for computer scientists (context) - Burstall, Goguen et al. - 1981
3
Tools and Applications (context) - Czarnecki, Eisenecker et al. - 2000
3
A probabilistic approach to the problem of automatic selecti..
- Chuang, Hwang - 1996
3
Why dependent types matter (context) - Altenkirch, McBride et al. - 2005
2
Category theory (context) - Barr, Wells - 1999
1
Ordered-sorted algebra I: Equational deduction for multiple .. (context) - Goguen, Meseguer - 1989
1
Security by typing (context) - Debbabi, Durgin et al. - 2003
1
alao-Gostanza. La potencia expresiva de los catamorfismos (context) - Rodriguez, Garca - 1995
1
Programming with abstract data types (context) - Berger - 2001
1
Improved fusion for optimizing generics (context) - Alimarine, Smetsers - 2005
1
Declarative Programming in the Context of Object-Oriented La.. (context) - Gibbons, datatype-generic - 2003
1
An introduction to the algebraic specification of abstract d.. (context) - Baillie - 1989
1
Type theories and object-oriented programmimg (context) - Danforth, Tomlinson - 1988
1
Special Issue on Program Transformation (context) - Gibbons, Hutton et al. - 2005
Documents on the same site (http://www.cs.nott.ac.uk/Research/fop/index.html):
Compiling and Reasoning about Exceptions and Interrupts - Wright (2005)
(Correct)
Modal Logics with Existential Modality, Finite-iteration.. - Shkatov (2005)
(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