Issues in programming language design | Proceedings of the May 19-22, 1975, national computer conference and exposition

· ACM Other conferences

5 min read Original article ↗

Abstract

The past few years have witnessed an increased understanding of the relationship between programming languages and problem solving. Programming is now understood to be a rather difficult task which requires the simultaneous application of principles, skills, and art. Computer scientists have recognized that the features of a programming language can have a significant effect upon the ease with which reliable programs can be developed. It has also been observed that certain languages and language features are particularly well suited for the use of systematic programming techniques, while others hinder or discourage such discipline. Of course, it is possible to write well-structured, clearly organized programs in any programming language, but such programs have often been the exception rather than the rule.

Formats available

You can view the full content in the following formats:

References

[1]

Dijkstra, E. W., "The Humble Programmer," CACM, Vol. 15, No. 10, October 1972, pp. 859--866.

[2]

Knuth, D. E., "Computer Programming as an Art," CACM, Vol. 17, No. 12, December 1974, pp. 667--673.

[3]

Dennis, J. B., "The Design and Construction of Software Systems," in Advanced Course on Software Engineering, ed. M. Beckmann et al. Berlin: Springer Verlag, 1973, pp. 12--28.

[4]

Dahl, O-J., E. W. Dijkstra and C. A. R. Hoare, Structured Programming, London: Academic Press, 1972.

[5]

Dijkstra, E. W., "GOTO Statement Considered Harmful," CACM, Vol. 11, No. 3, March 1968, pp. 147--8.

[6]

Wulf, W. A., "A Case Against the GOTO," ACM SIGPLAN Notices, Vol. 7, No. 11, November 1972, pp. 63--69.

[7]

Sammet, J., "Roster of Programming Languages for 1973," Computing Reviews, Vol. 15, No. 4, April 1974, pp. 147--160.

[8]

Wirth, N., "The Programming Language PASCAL (Revised Report)," Berichte der Fachgruppe Computer-Wissenschaften, Eidgenossische Technische Hochschule, Zurich, 1973.

[9]

Wulf, W. A., "BLISS: A Language for Systems Programming," CACM, Vol. 14, No. 12, December 1971, pp. 780--790.

[10]

Liskov, B., "A Note on CLU," Computation Structures Group Memo 112, MIT Project MAC, 1974.

[11]

Cheatham, T. E., Jr., "The Recent Evolution of Programming Languages," Proceedings IFIP Congress 71, Amsterdam: North-Holland, 1972, pp. 298--313.

[12]

Elson, M., Concepts of Programming Languages, Palo Alto: Science Research Associates, 1973.

[13]

Ledgard, H. F., "Ten Mini-Languages: a Study of Topical Issues in Programming Languages," Computing Surveys, Vol. 3, No. 3, September 1971, pp. 115--146.

[14]

Wasserman, A. I., "Online Programming Systems and Languages: a History and Appraisal," University of California at San Francisco Laboratory of Medical Information Science Technical Report No. 6, July 1974.

[15]

Aiello, J. M., "An Investigation of Current Language Support for the Data Requirements of Structured Programming," MAC Technical Memorandum 51, MIT Project MAC, 1974.

[16]

Sherertz, D. D., A. I. Wasserman and D. R. Allison, "Some Critical Comments Concerning MUMPS," Proceedings 1974 MUMPS Users' Group Meeting, St. Louis: MUMPS Users' Group, Biomedical Computing Laboratory, Washington University, pp. 173--190.

[17]

Wirth, N., "On the Design of Programming Languages," Information Processing 74. Amsterdam: North Holland, 1974, pp. 386--393 (preprints).

[18]

Hoare, C. A. R., "Hints on Programming Language Design," Stanford University Computer Science Department Technical Report CS-73-403, December 1973.

[19]

Fisher, D. A., "A Survey of Control Structures in Programming Languages," ACM SIGPLAN Notices, Vol. 7, No. 11, November 1972, pp. 1--13.

[20]

Bohm, C. and G. Jacopini, "Flow Diagrams, Turing Machines, and Languages with only Two Formation Rules," CACM, Vol. 9, No. 5, May 1966, pp. 366--371.

[21]

Herriot, R., "A Uniform View of Control Structures in Programming Languages," Information Processing 74, Amsterdam: North Holland, 1974, pp. 331--335 (preprints).

[22]

Zahn, C. T., "A Control Statement for Natural Top-Down Structured Programming," in Programming Symposium: Proceedings, Colloque sur la Programmation, ed. B. Robinet. Berlin: Springer-Verlag, 1974, pp. 170--180.

[23]

Cheatham, T. E., Jr., "Motivation for Extensible Languages," ACM SIGPLAN Notices, Vol. 4, No. 8, August 1969, pp. 45--48.

[24]

Flon, L., "A Survey of Some Issues Concerning Abstract Data Types," Carnegie-Mellon University, Department of Computer Science Technical Report, September 1974.

[25]

George, J. E. and G. R. Sager, "Variables---Bindings and Protection," ACM SIGPLAN Notices, Vol. 8, No. 12, December 1973, pp. 18--29.

[26]

Presser, L. and J. R. White, "Making Global Variables Beneficial," Information Processing 74, Amsterdam: North-Holland, 1974, pp. 413--418 (preprints).

[27]

Galler, B., "Extensible Languages," Information Processing 74, Amsterdam: North Holland, 1974, pp. 313--316 (preprints).

[28]

Schuman, S., (ed.) Proceedings of the International Symposium on Extensible Languages, ACM SIGPLAN Notices, Vol. 6, No. 12, December 1971.

[29]

Wegbreit, B., "The ECL Programming System," Proceedings AFIPS 1971 FJCC, Vol. 39, pp. 253--262.

[30]

Liskov, B. and S. Zilles, "Programming with Abstract Data Types," ACM SIGPLAN Notices, Vol. 9, No. 4, April 1974, pp. 50--60.

[31]

Morris, J. H., Jr., "Types are not Sets," Conference Record of ACM Symposium on Principles of Programming Languages, 1973, pp. 120--124.

[32]

Wegbreit, B., "The Treatment of Data Types in EL1," CACM, Vol. 17, No. 5, May 1974, pp. 251--264.

[33]

Knuth, D. E., "Structured Programming with GOTO Statements," Computing Surveys, Vol. 6, No. 4, December 1974, pp. 261--301.

[34]

Conway, M. E., "Design of a Separable Transition-Diagram Compiler," CACM, Vol. 6, No. 7, July 1963, pp. 396--408.

[35]

Brinch Hansen, P., Operating System Principles, Englewood Cliffs, Prentice-Hall, Inc., 1973.

[36]

Dijkstra, E. W., "Hierarchical Ordering of Sequential Processes," in Operating System Techniques, ed. Hoare and Perrott, London: Academic Press, 1973, pp. 72--93.

[37]

Hoare, C. A. R., "Monitors: an Operating System Structuring Concept," CACM Vol. 17, No. 10, October 1974, pp. 549--557.

[38]

Floyd, R. W., "Nondeterministic Algorithms," JACM, Vol. 14, No. 4, October 1967, pp. 636--644.

[39]

Dijkstra, E. W., "Guarded Commands, non-determinacy, and a Calculus for the Derivation of Programs," Report EWD418, Burroughs, Nuenen, the Netherlands, 1974.

[40]

Wasserman, A. I., "Some Principles of User Software Engineering for Information Systems," IEEE COMPCON Spring 75 Conference Digest (in press).

[41]

Goodenough, J. B., "Structured Exception Handling," Conference Record of the Second ACM Symposium on Principles of Programming Languages, 1975, pp. 204--224.

[42]

Codd, E. F., "Recent Investigations in Relational Data Base Systems," Information Processing 74, Amsterdam: North-Holland Publishing Co, 1974, pp. 1017--1021 (preprints).

[43]

Kosy, D. K., "Approaches to Improved Program Validation through Programming Language Design," in Program Test Methods, ed. W. Hetzel. Englewood Cliffs: Prentice-Hall, Inc., 1973, pp. 75--92.

[44]

Wirth, N., "On the Composition of Well-Structured Programs," Computing Surveys, Vol. 6, No. 4, December 1974, pp. 247--260.