1979
DOI: 10.1145/357062.357064
|View full text |Cite
|
Sign up to set email alerts
|

Programming by Refinement, as Exemplified by the SETL Representation Sublanguage

Abstract: “Pure” SETL is a language of very high level allowing algorithms to be programmed rapidly and succintly. SETL's representation sublanguage adds a system of declarations which allow the user of the language to control the data structures that will be used to implement an algorithm which has already been written in pure SETL, so as to improve its efficiency. Ideally no rewriting of the algorithm should be necessary. The facilities provided by the representation sublanguage and the run-time data structures that i… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
41
0

Year Published

1981
1981
2012
2012

Publication Types

Select...
5
4

Relationship

0
9

Authors

Journals

citations
Cited by 89 publications
(41 citation statements)
references
References 4 publications
0
41
0
Order By: Relevance
“…The useful content in the data structure is stored in the data fields of the elements of nodes. The nodes set can be either explicitly manipulated through a library data type or built-in type [7], or it can be verified to correspond to a set of reachable objects using techniques such as [27]. The content of the list, stored in the content specification variable, is then an image of nodes under the function data.…”
Section: Motivating Examplesmentioning
confidence: 99%
“…The useful content in the data structure is stored in the data fields of the elements of nodes. The nodes set can be either explicitly manipulated through a library data type or built-in type [7], or it can be verified to correspond to a set of reachable objects using techniques such as [27]. The content of the list, stored in the content specification variable, is then an image of nodes under the function data.…”
Section: Motivating Examplesmentioning
confidence: 99%
“…The SETL representation sublanguage [8] maps abstract SETL set and map objects to implementations, although the details are quite different from our work. Unlike SETL, we handle relations of arbitrary arity, using functional dependencies to enforce complex sharing invariants.…”
Section: Synthesizing Data Representationsmentioning
confidence: 93%
“…Such languages can either be directly executed (Dewar, 1979) or can arise as abstractions of programs in standard languages (Lam et al, 2005). The program in Figure 4 manipulates a global set of objects content and an integer field size.…”
Section: Verifying Data Structure Consistencymentioning
confidence: 99%