Nothing Special   »   [go: up one dir, main page]

skip to main content
article
Free access

A programmer controlled approach to data and control abstraction

Published: 01 June 1983 Publication History

Abstract

Traditionally, data abstraction languages have only provided a means to extend the language “upward” to include new procedures and data types not present in the base language. This paper introduces a complementary approach, which also allows programmers to extend the language “downward” and thus to override many of the previously preempted decisions concerning the nature and implementation of various language constructs. In order to illustrate the approach, several extension examples are presented that involve control of decisions below the level of Pascal-like languages. Implementation of the programmer defined language constructs is also discussed and benchmark results are reported that show them comparable—and in many cases exceeding—in efficiency the corresponding built-in constructs of conventional languages.

References

[1]
Atkinson, Russell, Liskov, Barbara, and Scheifler, Robert, Aspects of implementing CLU. MIT, Laboratory for Computer Science, Computation Structures Group Memo 167, Oct. 1978.]]
[2]
Ford, Gary and Hansche, Brian, Optional, repeatable, and varying type parameters. SIGPLAN Notices 17, 2 (Feb. 1982), 41-48.]]
[3]
Gries, David and Gehani, Narain, Some ideas on data types in high-level languages. Comm. ACM 20, 6 (June 1977), 414-420.]]
[4]
Heimonen, Juha-Matti, VILMA—A virtual Lukko machine. University of Tampere, Dept. of Mathematical Sciences, Report C22, June 1981.]]
[5]
Heinänen, Juha, Logical architecture of Ukko—A design for experimental microprogramming. University of Tampere, Dept. of Mathematical Sciences, Report C5, July 1978 (revised April 1979).]]
[6]
Heinänen, Juha, The programming language Lukko. University of Tampere, Dept. of Mathematical Sciences, Report A54, May 1981 (revised May 1982).]]
[7]
Heinänen, Juha, Lukko extension to the level of Pascal. University of Tampere, Dept. of Mathematical Sciences, Report A71, Jan. 1982.]]
[8]
Heinänen, Juha, A data and control abstraction approach to microprogramming. Ph.D. Dissertation, Department of Electronics, Tampere University of Technology, May 1983.]]
[9]
Herriott, Robert G., A uniform view of control structures in programming languages. In Information Processing 74, North-Holland, Amsterdam, 1974, 331-335.]]
[10]
Holt, Richard C. and Wortman David B., A model for implementing Euclid modules and type templates. Proc. of the SIGPLAN Symposium on Compiler Construction, Denver, Aug. 1979, 8-12.]]
[11]
Karjalainen, Martti, Preliminary definition of MLukko. University of Tampere, Dept. of Mathematical Sciences, Report C11, Dec. 1979 (in Finnish).]]
[12]
Kogge, Peter M., An architectural trail to threaded-code systems. Computer 15, 3 (March 1982), 22-32.]]
[13]
Kurki-Suonio, R. and Heinänen, J., A data abstraction language based on microprogramming. Proc. of the 13th Annual Microprogramming Workshop, Colorado Springs, Nov.-Dec. 1980, 154-161.]]
[14]
Lampson, B. W., et. al., Report on the programming language Euclid. SIGPLAN Notices 12, 2 (Feb. 1977).]]
[15]
Landin, P. J., The mechanical evaluation of expressions. Comput. J. 6, 4 (Jan. 1964), 308-320.]]
[16]
Landin, P. J., A correspondence between Algol 60 and Church's Lambda-notation: Part I. Comm. ACM 8, 2 (Feb. 1965), 89-101.]]
[17]
Liskov, Barbara, et. al., Abstraction mechanisms in CLU. Comm. ACM 20, 8 (Aug. 1977), 564-576.]]
[18]
Nori, K. V., et. al., The PASCAL <P> compiler: Implementation notes. ETH, Institut für Informatik, Report 10, Dec. 1974.]]
[19]
Reference manual for the Ada programming language. United States Department of Defence, July 1980.]]
[20]
Shaw, Mary, Wulf, William A., and London, Ralph L., Abstraction and verification in Alphard: defining and specifying iteration and generators. Comm. ACM 20, 8 (Aug. 1977), 553-564.]]
[21]
Shaw, Mary and Wulf, Wm. A., Towards relaxing assumptions in languages and their implementations. SIGPLAN Notices 15, 3 (March 1980), 45-61.]]
[22]
Wirth, N., Modula: A language for modular multiprogramming. Software—Practice and Experience 7, 1 (1977), 3-35.]]
[23]
Wirth, N., Modula-2. ETH, Institut für Informatik, Report 40, April 1981.]]
[24]
Wirth, N., The personal computer Lilith. ETH, Institut für Informatik, Report 40, April 1981.]]
[25]
Wulf, William A., London, Ralph L., and Shaw, Mary, An introduction to the construction and verification of Alphard programs. IEEE Trans. Software Engineering SE-2, 4 (Dec. 1976), 253-265.]]
[26]
Wulf, Wm. A. (ed.), An informal definition of Alphard. Dept. of Computer Science, Carnegie-Mellon University, CMU-CS-78-105.]]
[27]
Wulf, Wm. A., Abstract data types: A retrospective and prospective view. Lecture Notes in Computer Science 88, Springer Verlag 1980, 94-112.]]

Cited By

View all
  • (1984)Migration implementation by integrating microprogramming and HLL programmingProceedings of the 17th annual workshop on Microprogramming10.1145/800016.808225(147-154)Online publication date: 1-Dec-1984
  • (1984)Migration implementation by integrating microprogramming and HLL programmingACM SIGMICRO Newsletter10.1145/384281.80822515:4(147-154)Online publication date: 1-Dec-1984
  • (1984)Software ReviewsIEEE Software10.1109/MS.1984.2347181:3(82-86)Online publication date: 1-Jul-1984

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 18, Issue 6
June 1983
219 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/872728
Issue’s Table of Contents
  • cover image ACM Conferences
    SIGPLAN '83: Proceedings of the 1983 ACM SIGPLAN symposium on Programming language issues in software systems
    June 1983
    230 pages
    ISBN:0897911083
    DOI:10.1145/800226

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 June 1983
Published in SIGPLAN Volume 18, Issue 6

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)96
  • Downloads (Last 6 weeks)17
Reflects downloads up to 13 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (1984)Migration implementation by integrating microprogramming and HLL programmingProceedings of the 17th annual workshop on Microprogramming10.1145/800016.808225(147-154)Online publication date: 1-Dec-1984
  • (1984)Migration implementation by integrating microprogramming and HLL programmingACM SIGMICRO Newsletter10.1145/384281.80822515:4(147-154)Online publication date: 1-Dec-1984
  • (1984)Software ReviewsIEEE Software10.1109/MS.1984.2347181:3(82-86)Online publication date: 1-Jul-1984

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media