(Enter summary)
Abstract: Polymorphic types are labels classifying both (a) defined components in a library and (b) contexts of free
variables in partially written programs. We propose to help programmers make better use of software
libraries by providing a system that, given (b), identifies candidates from (a) with matching types.
Assuming at first that matching means unifying (ie having a common instance) we discuss efficient ways of
implementing such a retrieval system, and also indicate its likely effectiveness... (Update)
Context of citations to this paper: More
...details in the representation of data. They are used in functional programming to provide a means to search functions by types [20 22, 39 42] and to match modules by specifications [7, 19] Searching for converters between particularly complex isomorphic types raises the...
.... isomorphisms based approach can help in retrieving complex software components from large libraries of functions [15, 24, 25] or modules [29, 3, 4] and in automatically producing bridge code between different representations of a (possibly recursive) data type in systems like...
Cited by: More
Specification Matching of Software Components - Zaremski (1997)
(Correct)
On the Unification Problem for Cartesian Closed Categories - Exte Nd Ed
(Correct)
A Formal Approach to Component Adaptation and Composition - Hemer (2005)
(Correct)
Active bibliography (related documents): More All
0.7: Types and Type Inference in a Visual Programming Language - Burnett (1993)
(Correct)
0.3: Minimal Typing Derivations - Bjørner (1994)
(Correct)
0.3: Toward A Foundation of Disjunctive Logic Programming - Minker (1989)
(Correct)
Similar documents based on text: More All
0.2: An Outline Pattern Language for Z: five illustrations and.. - Stepney, Polack, Toyn
(Correct)
0.1: New Dimensions in Heap Profiling - Runciman, Röjemo (1996)
(Correct)
0.0: Tracing and Debugging Lazy Functional Computations - Sparud (1999)
(Correct)
Related documents from co-citation: More All
17: Using types as search keys in function libraries (context) - Rittri - 1991
10: Specifications as search keys for software libraries
- Rollins, Wing - 1991
7: Mathematical Structures in Computer Science (context) - Bruce, Di Cosmo et al. - 1992
BibTeX entry: (Update)
Colin Runciman and Ian Toyn. Retrieving re-usable software components by polymorphic type. Journal of Functional Programming, 1(2):191--211, 1991. A preliminary version appeared in the proceedings of FPCA'89, pages 166--173. http://citeseer.ist.psu.edu/runciman91retrieving.html More
@inproceedings{ runciman89retrieving,
author = "Colin Runciman and Ian Toyn",
title = "Retrieving reusable software components by polymorphic type",
booktitle = "Proceedings of the Fourth International Conference on Functional Programming Languages and Computer Architecture",
publisher = "ACM Press",
address = "London, UK",
isbn = "0-201-51389-7",
pages = "166--173",
year = "1989",
url = "citeseer.ist.psu.edu/runciman91retrieving.html" }
Citations (may not include all citations):
809
A theory of type polymorphism in programming (context) - Milner - 1978
652
A discipline of programming (context) - Dijkstra - 1976
359
The Implementation of Functional Programming Languages (context) - Jones - 1987
303
Hypertext: an Introduction and Survey (context) - Conklin - 1987
258
Miranda: A Non-Strict Functional Language with Polymorphic T.. (context) - Turner - 1985
197
Literate Programming (context) - Knuth - 1984
95
HOPE: an experimental applicative language
- Burstall, MacQueen et al. - 1980
87
An Efficient Unification Algorithm (context) - Martelli, Montanari - 1982
81
A proposal for Standard ML (context) - Milner - 1984
59
Basic Polymorphic Typechecking
- Cardelli - 1985
56
ML with Extended Pattern Matching and Subtypes
- Jategaonkar, Mitchell - 1988
48
Implementing Prolog -- Compiling Predicate Logic Programs (context) - Warren - 1977
42
Using Types as Search Keys in Function Libraries (context) - Rittri - 1989
27
A synthesis of several sorting algorithms (context) - Darlington - 1978
9
Exploratory Environments for Functional Programming (context) - Toyn - 1987
7
Department of Computer Science (context) - Runciman, Toyn et al. - 1989
4
QLOG -- the programming environment for Prolog in LISP (context) - Komorowski - 1982
4
A new type-checker for a functional language (context) - Fairbairn - 1986
3
Transformation Systems and the Algebraic Structure of Atomic.. (context) - Reynolds - 1969
2
Performance Polymorphism (context) - Toyn, Dix et al. - 1987
1
LML Users' Manual (context) - Augustsson, Johnsson - 1987
1
Program Development by Stepwise Refinement (Reprint (context) - Wirth - 1983
1
Oxford University Computing Laboratory (context) - Wadler, Miller et al. - 1986
The graph only includes citing articles where the year of publication is known.
Documents on the same site (http://www.cs.york.ac.uk/~colin/papers/papers.html): More
Widening the Representation Bottleneck: A Functional.. - Cattrall, Runciman (1993)
(Correct)
Binding-time Improvement and Fold/Unfold Transformation - Runciman
(Correct)
Profiling Parallel Functional Computations (Without.. - Runciman, Wakeling (1993)
(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