|
ABSTRACT
A brief history of the <u>goto</u> controversy (retention or deletion of the <u>goto</u> statement) is presented. After considering some of the theoretical and practical aspects of the problem, a summary of arguments both for and against the <u>goto</u> is given.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Al. Ashcroft, Edward and Manna, Zohar. "The translation of 'goto' programs to 'while' programs". <u>Proc. IFIP Congress 71</u>, Ljubljana, Aug. 1971.
|
| |
2
|
B1. de Bakker, J. W. "Semantics of programming languages". <u>Advances in Information Systems Science</u> 2 (Ed. Tou, J. T.) Plenum Press, New York, 1969.
|
| |
3
|
B2. Barron, D. W. <u>Recursive Techniques in Programming</u>. American Elsevier, New York, 1968.
|
| |
4
|
B3. Barron, D. W. and Strachey, C. "Programming". <u>Advances in Programming and Non-Numerical Computation</u>. (Ed. Fox, L.), Pergamon Press, New York, 1966.
|
| |
5
|
B4. Berry, D. M. "Introduction to Oregano". <u>Proc. Symposium on Data Structures in Programming Languages</u>, SIGPLAN Notices 6, 2 (Feb. 1971).
|
| |
6
|
B5. Black, Fischer. "Styles of programming in LISP" <u>The Programming Language LISP: Its Operation and Applications</u> (Ed. Berkeley and Bobrow), Information International, Cambridge, Mass. 1964.
|
 |
7
|
|
 |
8
|
|
| |
9
|
B8. Burge, W. H. "Notes on a model for programming systems: Part I". Report RC 2188 (Aug. 1968). IBM Research Division, Yorktown Heights, N. Y.
|
| |
10
|
B9. Burstall, R. M. "Writing search algorithms in functional form" <u>Machine Intelligence</u> 3 (Ed. Michie, D.) Edinburgh Univ. Press, Edinburgh, 1968.
|
| |
11
|
B10. Burstall, R. M. "Proving properties of programs by structural induction", <u>Computer Journal</u> 12, 1 (Feb. 1969).
|
| |
12
|
B11. Burstall, R. M. and Popplestone, R. J. "POP-2 refercnce manual" <u>Machine Intelligence</u> 2 (Ed. Dale & Michie), American Elsevier, New York 1968.
|
| |
13
|
B12. Burstall, R. M. and Landin, P. J. "Programs and their proofs: an algebraic approach", <u>Machine Intelligence</u> 4 (Eds. Meltzer & Michie) Edinburgh Univ. Press, Edinburgh, 1969.
|
| |
14
|
C1. Caracciolo di Forino, A., Spanedda, L. and Wolkenstein, N. "PANON-1B: A programming language for symbol manipulation ", <u>Calcolo</u>, Vol. 3, 1966.
|
| |
15
|
C2. Caracciolo di Forino, A. "Generalized Markov algorithms and automata", <u>Automata Theory</u> (Ed. Caianiello, E. R.), Academic Press, New York, 1966.
|
 |
16
|
|
| |
17
|
|
 |
18
|
|
| |
19
|
C6. Cooper, D. C. "On the equivalence of certain computations"<u>Computer Journal</u> 9 (1966), 45--52.
|
| |
20
|
C7. Cooper, D. C. "Reduction of programs to a standard form by graph transformation", <u>Theory of Graphs</u>, <u>International Symposium</u>, Rome 1966 (Ed. Rosentiehl, P.), Gordon and Breach, New York, 1967.
|
 |
21
|
|
| |
22
|
C9. Cooper, D. C. "Some transformations and standard forms of graphs, with applications to computer programs", <u>Machine Intelligence</u> 2 (Ed. Dale & Michie), American Elsevier, New York, 1968.
|
| |
23
|
C10. Coulouris, G. F. "Principles for implementing useful subsets of advanced programming languages", <u>Machine Intelligence</u> 1 (Ed. Collins & Michie), Oliver & Boyd, Edinburgh, 1967.
|
| |
24
|
C11. Curry, H. and Feys, R. <u>Combinatory Logic</u>, Vol. 1, North-Holland, Amsterdam, 1958.
|
| |
25
|
D1. Dijkstra, E. W., "An attempt to modify the constituent concepts of serial program execution', <u>Proc. ICC Symposium on Symbolic Languages in Data Processing</u>, Gordon & Breach, New York, 1962.
|
| |
26
|
D2. Dijkstra, E. W., "Programming considered as a human activity", <u>Proceedings IFIP Congress 65</u>, 65, edited by W. A. Kalenich, Spartan Books, Washington, D. C., 1965.
|
| |
27
|
D3. Dijkstra, E. W. "Recursive programming", <u>Programming Systems and Languages</u> (Ed. Rosen, S.), McGraw-Hill, New York 1967.
|
 |
28
|
|
| |
29
|
D5. Dijkstra, E. W. "A constructive approach to the problem of program correctness", <u>BIT</u> 8 (1968).
|
| |
30
|
D6. Dijkstra, E. W. "Notes on structured programming", EWD 249, Technical University, Eindhoven, Netherlands, 1969.
|
| |
31
|
El. Ershov, A. P. "Theory of program schemata", <u>Proc. IFIP Congress 71</u>, Ljubljana, Aug. 1971.
|
 |
32
|
|
| |
33
|
|
 |
34
|
|
 |
35
|
|
| |
36
|
F5. Floyd, R. W. "Assigning meanings to programs", <u>Proc. Symp. Applied Math.</u>, AMS Vol. 19, 1967.
|
 |
37
|
|
| |
38
|
|
| |
39
|
G3. Gilmore, P. C. "An abstract computer with LISP-like machine language without a label operator", <u>Computer Programming and Formal Systems</u> (Eds. Braffort & Hirschberg), North-Holland, Amsterdam, 1963.
|
| |
40
|
G4. Goodstein, R. L. <u>Recursive Analysis</u>, North-Holland, Amsterdam, 1961.
|
| |
41
|
|
 |
42
|
|
 |
43
|
|
 |
44
|
|
| |
45
|
I2. Ianov, I. "The logical schemes of algorithms", <u>Problems of Cybernetics I</u> (English translation) Pergamon Press, Oxford 1960, 82--140.
|
| |
46
|
J1. Johansen, Peter, "Non-deterministic programming", <u>BIT</u> 7 (1967), 289--304.
|
 |
47
|
|
| |
48
|
K1. Kleene, S. C. <u>Introduction to Metamathematics</u>, Van Nostrand, New York, 1952.
|
| |
49
|
K2. Knuth, D. E. and Floyd, R. W. "Notes on avoiding 'goto' statements", <u>Information Processing Letters</u> 1, North-Holland, Amsterdam (1971), 23--31.
|
| |
50
|
L1. Landin, P. J. "The mechanical evaluation of expressions", <u>Computer Journal</u> 6, 4 (1964).
|
 |
51
|
|
 |
52
|
|
| |
53
|
L4. Leavenworth, B. M. "The definition of control structures in MCG360". Report RC2376 (Feb. 1969). IBM Research Division, Yorktown Heights, N. Y.
|
 |
54
|
|
| |
55
|
L6. Lucas, P. et al "Method and notation for the formal definition of programming languages", Tech. Report TR 25.087, IBM Laboratory, Vienna, 1968.
|
| |
56
|
L7. Luckham, D. C., Park, D. M. R. and Paterson, M. S., "On formalized computer programs", <u>Journal of Computer and System Sciences</u>, June 1970.
|
| |
57
|
M1. Markov, A. A. "The theory of algorithms" (Russian Translation), U. S. Dept. of Commerce, Office of Technical Services No. OTS 60-51085.
|
| |
58
|
|
| |
59
|
M3. McCarthy, J. "Towards a mathematical science of computation", <u>Proc. IFIP Congress</u>, Munich 1962, North-Holland, Amsterdam.
|
| |
60
|
M4. McCarthy, J. "Basis for a mathematical theory of computation", <u>Computer Programming and Formal Systems</u> (Eds. Braffort & Hirschberg), North-Holland, Amsterdam, 1963.
|
| |
61
|
M5. Mills H. "Top down programming in large systems", <u>Debugging Techniques in Large Systems</u> (Ed. Rustin, Randall), Prentice-Hall, Englewood Cliffs, N. J. 1971.
|
| |
62
|
|
| |
63
|
M7. Mooers. C. N. and Deutsch, L. P. "TRAC: A text handling language" <u>Proc. ACM 20th National Conf.</u> Cleveland, Ohio (Aug. 1965).
|
| |
64
|
N1. Naur, P. "Proof of algorithms by general snapshots", <u>BIT</u> 6, 1966.
|
| |
65
|
N2. Naur, P. "Programming by action clusters", <u>BIT</u> 9, 1969.
|
| |
66
|
P1. Paterson, M. S. "Program schemata", <u>Machine Intelligence</u> 3 (Ed. Michie. D.), Edinburgh Univ. Press, Edinburgh, 1968.
|
| |
67
|
P2. Paterson, M. S. and Hewitt, C. E. "Comparative schematology", <u>Proj. MAC Conference on Concurrent Systems and Parallel Computation</u> (June 1970), ACM, New York, 1970.
|
| |
68
|
P3. Perlis, A. J., Lecture Notes on Seminar on Extensible Languages. Carnegie-Mellon University, Fall, 1968.
|
| |
69
|
P4. Peter, Rozsa. <u>Recursive Functions</u>, Academic Press, New York, 1967.
|
| |
70
|
P5. Post, E. I. "Finite combinatory processes - formulation I", <u>Journal of Symbolic Logic</u>, Vol. 1, (1936).
|
 |
71
|
|
 |
72
|
|
 |
73
|
|
 |
74
|
|
| |
75
|
S1. Schorre, D. V. "Improved organization for procedural languages", Technical Memo, August 1966, System Development Corp., Santa Monica, Calif.
|
 |
76
|
|
| |
77
|
S3. Stark. R. "A language for algorithms", <u>Computer Journal</u> Vol. 14, No. 1 (Feb. 1971).
|
| |
78
|
S4. Strachey, C. "A general purpose macrogenerator", <u>Computer Journal</u>, Vol. 8, (Oct. 1965).
|
| |
79
|
S5. Strachey, C. "Fundamental concepts in programmings", NATO Conf., Copenhagen 1967.
|
| |
80
|
S6. Strong, H. R., Jr. "Translating recursion equations into flow charts", <u>Journal of Computer and System Sciences</u>, 5, 3 (June 1971).
|
| |
81
|
T1. Turing, A. M. "On computable numbers with an application to the Entscheidungsproblem", <u>Proc. London Math. Soc.</u>, ser. 2, Vol. 42 (1936--1937).
|
| |
82
|
V1. Van Wijngaarden, A. "Recursive definition of syntax and semantics", <u>Formal Language Description Languages for Computer Programming</u>, edited by T. B. Steel, Jr., North-Holland, Amsterdam, 1966.
|
 |
83
|
|
| |
84
|
W2. Wegbreit, B. "Studies in extensible programming languages", ESD-TR-70-297, Directorate of Systems Design & Development, L. G. Hanscom Field, Bedford, Mass., May 1970.
|
 |
85
|
|
| |
86
|
|
 |
87
|
|
| |
88
|
W6. Wozencraft, J. M. and Evans, A. Jr., "Notes on programming linguistics", Dept. of Electrical Engineering, MIT, Cambridge, Mass., Feb. 1971.
|
| |
89
|
W7. Wulf, W. A. "Programming without the goto", <u>Proc. IFIP Congress 71</u>, Ljubljana, Aug. 1971.
|
 |
90
|
|
 |
91
|
|
| |
92
|
Y1. Yngve, V. H. <u>Computer Programming with COMITII</u>, The M.I.T. Press, Cambridge, Mass. 1972.
|
|