Abstract
In this paper we make suggestions aimed at enhancing the readability of programs. Our suggestions are about structure — the underlying structure of a program, and the structure of its text. We show how the types of relations expressed by the underlying structure of a program can be extended, and how these extended relations can be conveyed by its text, so as to enhance the readability, and ultimately the understandability of a program. We also show how the readability of the program can be improved by having its text linearly ordered so that each sentence motivates upcoming ones. This will complement the traditional notion of sequential program control flow.
This work was conducted while both authors were members of the Department of Artificial Intelligence, University of Edinburgh, Edinburgh, SCOTLAND.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Bibliography
Alagic, S. and M. A. Arbib, The design of well structured and correct programs, Springer Verlag, New York, 1978.
Ball, J., Williams, G., and Low, J., "Preliminary ZENO language description", Technical Report TR41, Computer Science Dept., University of Rochester, December, 1978.
Bobrow, D.S. and Winograd, T., "An overview of KRL, a Knowledge Representation Language, Cognitive Science 1(1), March, 1977.
Burstall, R.M. and J. A. Goguen, "Putting theories together to make specifications", in IJCAI, MIT, 1977.
Goguen, J.A. and J.J. Tardo, "An Introduction to OBJ: A Language for Writing and Testing Formal Algebraic Program Specifications", in Proceedings IEEE Conference on Specification for Reliable Software, pages 170–189, IEEE, 1979.
Gordon, M., R. Milner, and C. Wadsworth, "Edinburgh LCF: A Mechanized Logic of Computation", Technical Report, Department of Computer Science, University of Edinburgh, 1979.
Jensen, K. and N. Wirth, Pascal Users Manual and Report, Springer Verlag, Berlin, 1974.
Knuth, D.E., "Structured programs with goto statements", Computer Surveys 6(4), December, 1974, ed. P. Denning.
Labov, W., "The transformation of experience into narrative syntax", in Language in the Inner City, University of Pennsylvania Press, Philadelphia, 1972.
Lampson, B.W., J.J. Horning, R.L. London, J.G. Mitchell, and G.J. Popek, "Report on the programming language EUCLID", SIGPLAN notices 12(2), February, 1971.
Linde, C. and J.A. Goguen, "Structure of Planning Discourse", J. Social Biol. Struct. 1, 1978.
Linde, C. and W. Labov, "Spacial Networks as a site for the study of language", Language 51, 1975.
Linde, C., "The organization of discourse", in The English Language: English in its Social and Historical Context, Winthrop, Boston, 1979, edited by T. Shopen, A. Swicky, and P. Griffen.
Papert, S.A., "Teaching children thinking", Programmed Learning and Educational Technology 19(5), September, 1972.
Wegner, P. (editor), Research Directions in Software Technology, MIT Press, Cambridge, 1979.
Weiner, J.L. and R.M. Burstall, "Some observations about program descriptions", 1979, in preparation.
Weizenbaum, J., "ELIZA — A computer program for the study of natural language comprehension between man and machine", Communications of the ACM 9, 1965.
Winograd, T., "Beyond Programming Languages", CACM 22(7), July, 1979.
Wulf, W.A., "The next generation of programming languages, in Perspectives in Computer Science, ed. A.K. Janes, Academic Press, New York, 1977.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1980 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Weiner, J.L., Burstall, R.M. (1980). Making programs more readable. In: Robinet, B. (eds) International Symposium on Programming. Programming 1980. Lecture Notes in Computer Science, vol 83. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-09981-6_23
Download citation
DOI: https://doi.org/10.1007/3-540-09981-6_23
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-09981-9
Online ISBN: 978-3-540-39233-0
eBook Packages: Springer Book Archive