skip to main content
10.1145/800233.807045acmconferencesArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article
Free access

Programming with abstract data types

Published: 28 March 1974 Publication History

Abstract

The motivation behind the work in very-high-level languages is to ease the programming task by providing the programmer with a language containing primitives or abstractions suitable to his problem area. The programmer is then able to spend his effort in the right place; he concentrates on solving his problem, and the resulting program will be more reliable as a result. Clearly, this is a worthwhile goal.
Unfortunately, it is very difficult for a designer to select in advance all the abstractions which the users of his language might need. If a language is to be used at all, it is likely to be used to solve problems which its designer did not envision, and for which the abstractions embedded in the language are not sufficient.
This paper presents an approach which allows the set of built-in abstractions to be augmented when the need for a new data abstraction is discovered. This approach to the handling of abstraction is an outgrowth of work on designing a language for structured programming. Relevant aspects of this language are described, and examples of the use and definitions of abstractions are given.

References

[1]
Wirth, N. The programming language PASCAL. Acta Informatica, Vol. 1 (1971), pp 35-63.]]
[2]
Parnas, D. L. Information distribution aspects of design methodology, Proceedings of the IFIP Congress, August 1971.]]
[3]
Dijkstra, E. W. Notes on structured programming. Structured Programming, A.P.I.C. Studies in Data Processing, No. 8, Academic Press, New York, 1972, pp 1-81.]]
[4]
Schuman, S. A. and P. Jorrand. Definition mechanisms in extensible programming languages. Proceedings of the AFIPS, Vol. 37, 1970, pp 9-19.]]
[5]
Mealy, G. Another look at data. Proceedings of the AFIPS, Vol. 31, 1967, pp 525-534.]]
[6]
Balzer, R. M. Dataless programming. Proceedings of the AFIPS, Vol. 31, 1967, pp 557-566.]]
[7]
Earley, J. Toward an understanding of data structures. Comm. of the ACM, Vol. 14, No. 10 (October 1971), pp 617-627.]]
[8]
Dahl, O.-J., B. Myhrhaug, and K. Nygaard. The SIMULA 67 Common Base Language. Norwegian Computing Center, Oslo, Publication S-22, 1970.]]
[9]
Daley, R. C., and P. G. Neumann. A general purpose file system for secondary storage. Proceedings of the AFIPS, Vol. 27, 1965, pp 213-229.]]
[10]
Morris, J. H., Jr. Protection in programming languages. Comm. of the ACM, Vol. 16, No. 1 (January 1973), pp 15-21.]]
[11]
Zilles, S. N. Procedural encapsulation: a linguistic protection technique. SIGPLAN Notices, Vol. 8, No. 9 (September 1973), pp 140-146.]]
[12]
Reynolds, J. Personal communication.]]
[13]
Liskov, B. H. A design methodology for reliable software systems. Proceedings of the AFIPS, Vol. 41, 1972, pp 191-199.]]

Cited By

View all
  • (2024)Nominal Types for ErlangProceedings of the 23rd ACM SIGPLAN International Workshop on Erlang10.1145/3677995.3678191(24-32)Online publication date: 28-Aug-2024
  • (2024)Graphical and Textual Models Embedded in a Constructor-Driven Transformation2024 IEEE 18th International Conference on Semantic Computing (ICSC)10.1109/ICSC59802.2024.00065(226-230)Online publication date: 5-Feb-2024
  • (2024)Unifying Frameworks for Complete Test StrategiesScience of Computer Programming10.1016/j.scico.2024.103135(103135)Online publication date: Apr-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
Proceedings of the ACM SIGPLAN symposium on Very high level languages
March 1974
138 pages
ISBN:9781450378840
DOI:10.1145/800233
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 28 March 1974

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4,415
  • Downloads (Last 6 weeks)628
Reflects downloads up to 01 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Nominal Types for ErlangProceedings of the 23rd ACM SIGPLAN International Workshop on Erlang10.1145/3677995.3678191(24-32)Online publication date: 28-Aug-2024
  • (2024)Graphical and Textual Models Embedded in a Constructor-Driven Transformation2024 IEEE 18th International Conference on Semantic Computing (ICSC)10.1109/ICSC59802.2024.00065(226-230)Online publication date: 5-Feb-2024
  • (2024)Unifying Frameworks for Complete Test StrategiesScience of Computer Programming10.1016/j.scico.2024.103135(103135)Online publication date: Apr-2024
  • (2024)Collection skeletonsJournal of Systems and Software10.1016/j.jss.2024.112042213:COnline publication date: 1-Jul-2024
  • (2023)Toward Programming Languages for Reasoning: Humans, Symbolic Systems, and AI AgentsProceedings of the 2023 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3622758.3622895(136-152)Online publication date: 18-Oct-2023
  • (2022)Collection Skeletons: Declarative Abstractions for Data CollectionsProceedings of the 15th ACM SIGPLAN International Conference on Software Language Engineering10.1145/3567512.3567528(189-201)Online publication date: 29-Nov-2022
  • (2022)CS Education for the Socially-Just Worlds We NeedProceedings of the 53rd ACM Technical Symposium on Computer Science Education - Volume 110.1145/3478431.3499291(265-271)Online publication date: 22-Feb-2022
  • (2021)Specifying with Interface and Trait Abstractions in Abstract State Machines: A Controlled ExperimentACM Transactions on Software Engineering and Methodology10.1145/345096830:4(1-29)Online publication date: 23-Jul-2021
  • (2021)Analysis of Source Code Duplication in Ethreum Smart Contracts2021 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER50967.2021.00089(701-707)Online publication date: Mar-2021
  • (2020)Human-cyber-physical systems: concepts, challenges, and research opportunitiesFrontiers of Information Technology & Electronic Engineering10.1631/FITEE.200053721:11(1535-1553)Online publication date: 20-Nov-2020
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media