Signature matching is a method for organizing, navigating through, and retrieving from software libraries. We consider two kinds of software library components, functions and modules, and hence two kinds of matching, function matching and module matching. The signature of a function is simply its type; the signature of a module is a multiset of user-defined types and a multiset of function signatures. For both functions and modules, we consider not just exact match, but also various flavors of relaxed match. We describe various applications of signature matching as a tool for using software libraries, inspired by the use of our implementation of a function signature matcher written in Standard ML.
|
1463
|
The definition of Standard ML
– Milner, Tofte, et al.
- 1990
|
|
274
|
Larch: Languages and Tools for Formal Specifications
– Guttag, Horning
- 1993
|
|
225
|
Specification Matching of Software Components
– Zaremski, Wing
- 1997
|
|
139
|
An information retrieval approach for automatically constructing software libraries
– Maarek, Berry, et al.
- 1991
|
|
108
|
Functional Programming
– Field, Harrison
- 1988
|
|
93
|
The Inscape environment
– PERRY
- 1989
|
|
84
|
Storing and Retrieving Software Components: A Refinement Based System
– Mili, Mili, et al.
- 1994
|
|
82
|
A Framework for Source Code Search Using Program Patterns
– Paul, Prakash
- 1994
|
|
74
|
C.: Computing similarity in a reuse library system: an AI-based approach
– Ostertag, Hendler, et al.
|
|
63
|
Visualizing and querying software structures
– Consens, Mendelzon, et al.
- 1992
|
|
50
|
Using types as search keys in function libraries. Journal of Functional Pro-gramming
– Rittri
- 1991
|
|
45
|
Interfaces, Protocols, and the Semi-Automatic Construction of Software
– Yellin, Strom
- 1994
|
|
34
|
Integrating information retrieval and domain specific approaches for browsing and retrieval in object-oriented class libraries
– Helm, Maarek
- 1991
|
|
31
|
Specifications as search keys for software libraries
– Rollins, Wing
- 1991
|
|
28
|
Retrieving re-usable software components by polymorphic type
– Runciman, Toyn
- 1989
|
|
25
|
VCR: A VDM-based software component retrieval tool
– Fischer, Kievernagel, et al.
- 1994
|
|
23
|
The Smalltalk environment
– Tesler
- 1981
|
|
17
|
Type isomorphisms in a type assignment framework
– Cosmo
- 1992
|
|
14
|
The Minnowbrook workshop on software reuse: A summary report
– Agresti, McGarry
- 1990
|
|
13
|
A System for Reusing Partially Interpreted Schemas
– KATZ, RICHTER, et al.
- 1987
|
|
13
|
Thoughts on a larch/ML and a new application for LP
– Wing, Rollins, et al.
- 1993
|
|
10
|
The reuse system: Cataloging and retrieval of reusable software
– Arnold, Stepoway
- 1987
|
|
10
|
Formal methods applied to reuse
– Jeng, Cheng
- 1992
|
|
8
|
Sniff: A pragmatic approach to a C++ programming environment
– Bischofberger
- 1992
|
|
8
|
Inference-based support for programming in the large
– Snelting, Grosch, et al.
- 1991
|
|
6
|
The Edinburgh SML library
– Berry
- 1991
|
|
6
|
Checked out and long overdue: Experiences in the design of a C++ class library
– Fontana, Neath
- 1991
|
|
5
|
Signature matching for Ada software reuse
– STRINGER-CALVERT
- 1994
|
|
3
|
Classification of reusable modules
– iaz, R
- 1989
|
|
2
|
Concepts and Models
– Biggerstaff, Perlis
- 1989
|
|
2
|
Local guide to Standard ML
– Tarditi, Rollins
- 1993
|
|
1
|
The Standard ML of New Jersey library reference manual
– ATT
- 1993
|
|
1
|
Signature Matching \Delta 23
– Milner
- 1978
|
|
1
|
reprinted with corrections
– Rittri
- 1990
|