H ?
«
‹
←
→
›
»
Language peer sets for ALGOL 60:
International↑
International/1959↑
Designed 1959 ↑
1950s languages ↑
Second generation↑
Early Cold War↑
Genus True ALGOL60s ↑
Numerical Scientific ↑
True ALGOL60s↑
Generation of Algol 60↑
Algol family ↑
True ALGOL60s/1959↑
Generation of Algol 60/1959↑
Algol family/1959↑
True ALGOL60s/International↑
Generation of Algol 60/International↑
Algol family/International↑
Numerical Scientific ↑
Numerical Scientific/1959↑
Numerical Scientific/aa ↑
ALGOL 60(ID:1807/alg020)
Algorithm Language
alternate simple view
Country: International
Designed 1959
Published: 1960
Genus: True ALGOL60s
Sammet category: Numerical Scientific
A portable (international) language for scientific (mathematical) computations.
ALGOL 60 is small and elegant. It is block-structured, nested, recursive, and free-form. It was also the first language to be described in BNF (Backus-Naur Form). There are three lexical representations: hardware, reference, and publication. The only structured data types are arrays, but they are permitted to have lower bounds and could be dynamic. It also has conditional expressions, it introduced =, if, then, else ; very general "for' loops, switch declaration. Parameters are call-by-name and call-by-value. It has static local "own" variables. It lacks user-defined types, character manipulation and standard I/O.
Structures:
Related languages
References:
Naur, P. et al (1960) Naur, P. et al "Report on the algorithmic language ALGOL 60"
in [ACM] (1960) [ACM] CACM 3(05) May 1960
Naur et al (1960) Naur, P. et al "Report on the algorithmic language ALGOL 60"
in Goodman (ed) (1961) Goodman, Richard (ed) "Annual Review in Automatic Programming" (2) 1961 Pergamon Press, Oxford
Woodger, M (1960) Woodger, M "An introduction to ALGOL 60" pp67-75
Abstract
in (1960) The Computer Journal 3(2) July 1960
Bagley, PR (1961) Bagley, PR "Improving problem-oriented language by stratifying it" pp217-221
in (1961) The Computer Journal 4(3) October 1961
Ershov, A. P. (1961) Ershov, A. P. "Avtomatizacija programmirovanija sbor-nik perevodov" [Automatic programming. A collection of translations covering FORTRAN, UNICODE, SOAP, IT and ALGOL] Moscow 1961.
in (1961) The Computer Journal 4(3) October 1961
Naur, Peter (1961) Naur, Peter "The Progress of ALGOL in Europe"
Extract:
Introduction
Extract:
The Central European Group (ALCOR)
Extract:
The Dutch Group
Extract:
The Scandinavian Group
Extract:
Independent Centers
Extract:
General Trends
Extract:
Conclusion
in [Proceedings] (1961) Proceedings of the 1961 Computer Applications Symposium, Armour Research Foundation, Illinois Institute of Technology, Chicago, Illinois
Rutishauser (1961) Rutishauser, H. "Interference With An Algol Procedure" pp67-76
in Goodman (ed) (1961) Goodman, Richard (ed) "Annual Review in Automatic Programming" (2) 1961 Pergamon Press, Oxford
Barron (1962) Barron, D. W. review of Goodman, Richard (ed) "Annual Review in Automatic Programming", Vol. 2
Abstract
Extract:
ALGOL 60, MADCAP II, ELLIOTT Autocode
in [Computer Bulletin] (1962) The Computer Bulletin June 1962
d'Agapeyeff, A.; (1962) d'Agapeyeff, A.; "Current developments in commercial automatic programming" pp107-111
Abstract
Extract:
The properties of data
Extract:
ALGOL
in (1962) The Computer Journal 5(2) July 1962
Conway, R.W. et al, (1963) Conway, R.W. et al, "The Cornell Computing Language"
DOI
Abstract
Extract:
The CORC Language
Extract:
A field test of CORC
in [ACM] (1963) [ACM] CACM 6(06) (June 1963)
Dijkstra, E. W. (1963) Dijkstra, E. W. "An Algol 60 Translator For the X1" pp329-346
in Goodman (ed) (1963) Goodman, Richard (ed) "Annual Review in Automatic Programming" (3) 1963 Pergamon Press, Oxford
Dijkstra, E. W. (1963) Dijkstra, E. W. "On the Design of Machine Independent Programming Languages" pp27-42
in Goodman (ed) (1963) Goodman, Richard (ed) "Annual Review in Automatic Programming" (3) 1963 Pergamon Press, Oxford
Duncan, FG (1963) Duncan, FG "Input and output for ALGOL 60 on KDF 9" pp341-344
Online copy
in (1963) The Computer Journal 5(4) January 1963
Gerard, JM and Sambles, A (1963) Gerard, JM and Sambles, A "A hardware representation for ALGOL 60 using Creed teleprinter equipment" pp338-340
Abstract
Online copy
in (1963) The Computer Journal 5(4) January 1963
Hawkins, E. N. and Huxtable, H. R. (1963) Hawkins, E. N. and Huxtable, H. R. "A Multi-Pass Translation Scheme For Algol 60" pp163-206
in Goodman (ed) (1963) Goodman, Richard (ed) "Annual Review in Automatic Programming" (3) 1963 Pergamon Press, Oxford
Higman, B. (1963) Higman, B. "Towards An Algol Translator" pp121-162
in Goodman (ed) (1963) Goodman, Richard (ed) "Annual Review in Automatic Programming" (3) 1963 Pergamon Press, Oxford
Hirschmann, W. (1963) Hirschmann, W. review of d'Agapeyeff 1962 (Comp J)
Abstract
in [ACM] (1963) ACM Computing Reviews 4(01) January-February, 1963
Hoare, CAR (1963) Hoare, CAR "The Elliott ALGOL input/output system" pp345-348
Abstract
Online copy
in (1963) The Computer Journal 5(4) January 1963
Leavenworth, B. (1963) Leavenworth, B. review of Naur CACM 1963
Abstract
in [ACM] (1963) ACM Computing Reviews 4(01) January-February, 1963
Naur, Peter (1963) Naur, Peter "Documentation problems: ALGOL 60" pp77-79
in [ACM] (1963) [ACM] CACM 6(03) (Mar 1963)
Naur, Peter (ed) (1963) Naur, Peter (ed) "Revised Report on the Algorithmic Language ALGOL 60
in Goodman, Richard (ed) (1964) Goodman, Richard (ed) "Annual Review in Automatic Programming" (4) 1964 Pergamon Press, Oxford
Naur, Peter (ed) (1963) Naur, Peter (ed) "Revised Report on the Algorithmic Language ALGOL 60"
Abstract
Online copy
in (1963) The Computer Journal 5(4) January 1963
(1963) Official actions and responses to ALGOL as a programming language
pp159-160
in [ACM] (1963) [ACM] CACM 6(04) April 1963
Rutishauser, H. (1963) Rutishauser, H. "The Use of Recursive Procedures In Algol 60" pp43-52
in Goodman (ed) (1963) Goodman, Richard (ed) "Annual Review in Automatic Programming" (3) 1963 Pergamon Press, Oxford
Shoffner, Miriam G. and Peter J. Brown (1963) Shoffner, Miriam G. and Peter J. Brown "A suggested method of making fuller use of strings in ALGOL 60" pp169-171
Abstract
in [ACM] (1963) [ACM] CACM 6(04) April 1963
Watt, JM (1963) Watt, JM "The realization of ALGOL procedures and designational expressions" pp332-337
Abstract
Online copy
in (1963) The Computer Journal 5(4) January 1963
Woodger, M. (1963) Woodger, M. "The Description Of Computing Processes, Some Observations on Automatic Programming And Algol 60" pp 1-22
in Goodman (ed) (1963) Goodman, Richard (ed) "Annual Review in Automatic Programming" (3) 1963 Pergamon Press, Oxford
Burnett-Hall, D. G.; Dresel, L.A.G.; Samet, P.A. (1964) Burnett-Hall, D. G.; Dresel, L.A.G.; Samet, P.A. "Computer programming and autocodes" London, English Universities Press, 1964
Extract:
Pegasus and Sirius - General Information
in Goodman (ed) (1963) Goodman, Richard (ed) "Annual Review in Automatic Programming" (3) 1963 Pergamon Press, Oxford
Cavadia, I. (1964) Cavadia, I. review of Woodger 1963
Abstract
in (1964) ACM Computing Reviews 5(05) September-October 1964
McCarthy, J. (1964) McCarthy, J. review of Dijkstra ARIAP 1963 (Algol 60)
Abstract
in (1964) ACM Computing Reviews 5(03) May-June 1964
Fano, Robert (1965) Fano, Robert "The MAC system: a progress report" pp131-150
in Sass, M. (1965) Sass, M. and W. Wilkinson, eds. Computer Augmentation of Human Reasoning Spartan Books, Washington, D.C., 1965
Rosen (1965) Rosen, Saul review of Burnett-Hall et al 1964 "Computer Programming and Autocodes" Mathematics of Computation, Vol. 19, No. 89 (Apr., 1965), 168-169.
Extract:
Review
in Sass, M. (1965) Sass, M. and W. Wilkinson, eds. Computer Augmentation of Human Reasoning Spartan Books, Washington, D.C., 1965
Advances in Computers, Vol. (1967) Advances in Computers, Vol. 8 FL Alt and M Rubinoff (Eds.), Academic Press, New York, 1967
in Sass, M. (1965) Sass, M. and W. Wilkinson, eds. Computer Augmentation of Human Reasoning Spartan Books, Washington, D.C., 1965
Lecht, Charles Philip (1967) Lecht, Charles Philip "The programmer's ALGOL: a complete reference"
McGraw-Hill Book Co., New Nork, 1967
in Sass, M. (1965) Sass, M. and W. Wilkinson, eds. Computer Augmentation of Human Reasoning Spartan Books, Washington, D.C., 1965
Zimmerman, P.Z. (1967) Zimmerman, P.Z. review of Lecht 1967
Abstract
in (1967) ACM Computing Reviews 8(06) November-December 1967
Bemer, RW (1969) Bemer, RW "A politico-Social History of Algol" pp 151-238
in (1967) ACM Computing Reviews 8(06) November-December 1967
Berry, Daniel M. (1970) Berry, Daniel M. "The importance of implementation models in ALGOL 68: or how to discover the concept of necessary environment" pp14-24
Extract:
doi
Abstract
Extract:
THe necesary environment
in [SIGPLAN] (1970) SIGPLAN Notices 5(09) September 1970
Harrison, Malcolm C (1970) Harrison, Malcolm C "Data-structures and programming" New York: Courant Institute of Mathematical Sciences 1970
in [SIGPLAN] (1970) SIGPLAN Notices 5(09) September 1970
Rosen, S. (1972) Rosen, S. "Programming Systems and Languages 1965-1975"
Abstract
DOI
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
(1973) Computer Oral History Collection, 1969-1973, 1977 Interviewee: Morton Bernstein Interviewer: Robina Mapstone Date: March 14, 1973 Archives Center, National Museum of American History
Extract:
IAL, Algol 58, Algol 60
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Elson, M. (1973) Elson, M. Concept of programming languages, Science Research Associates, Palo Alto, Calif., 1973
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Peterson, W. (1974) Peterson, W. W. Introduction to programming languages, Prentice-Hall, Englewood Cliffs, N.J., 1974
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Nicholls, J. (1975) Nicholls, J. E. The structure and design of programming languages, Addison-Wesley, Reading, Mass., 1975
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Pratt; T. (1975) Pratt; T. W. Programming languages: Design and implementation Prentice-Hall, Englewood Cliffs N.J., 1975
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
(1976) The Higher Order Language Working Group (HOLWG) Working Paper on 23 exisitng programming languages
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Wichmann, B. A. (1976) Wichmann, B. A. "Ackermann's function: a study in the efficiency of calling procedures" BIT 16 (1976), pp103-110
Abstract
Extract:
Introduction
Extract:
Ackermann's function
Extract:
Acknowledgements
Extract:
Results of tests (altered to include authors where known)
Extract:
Program listing
Extract:
Properties of the algorithm
Extract:
Notes on the results and Factors influencing the execution speed
Extract:
Conclusion
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Barron, D. (1977) Barron, D. W. An introduction to the study of programming languages, Cambridge Univ. Press, N.Y., 1977
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Tucker, Allen B., JR. (1977) Tucker, Allen B., JR. Programming languages. McGraw-Hill, Inc., New York, 1977
in [ACM] (1972) [ACM] CACM 15(07) (July 1972)
Gries, D. (1978) Gries, D. "ALGOL 60 language summary"
in [HOPL I] (1979) SIGPLAN Notices 14(04) April 1979 including The first ACM SIGPLAN conference on History of programming languages (HOPL) Los Angeles, CA, June 1-3, 1978
Naur, Peter (1978) Naur, Peter "The European side of the last phase of the development of ALGOL 60"
in [HOPL I] (1979) SIGPLAN Notices 14(04) April 1979 including The first ACM SIGPLAN conference on History of programming languages (HOPL) Los Angeles, CA, June 1-3, 1978
Perlis, Alan J. (1978) Perlis, Alan J. "The American side of the development of ALGOL"
in [HOPL I] (1979) SIGPLAN Notices 14(04) April 1979 including The first ACM SIGPLAN conference on History of programming languages (HOPL) Los Angeles, CA, June 1-3, 1978
Sammet, Jean E (1978) Sammet, Jean E "Roster of programming languages for 1976-77" pp56-85
in [SIGPLAN] (1978) SIGPLAN Notices 13(11) Nov 1978
Pagan, F. G. (1979) Pagan, F. G. "Semantic Specification Using Two-Level Grammars: Blocks, Procedures and Parameters"
in (1979) Computer Languages 4(3-4)
Hoare, CAR (1980) Hoare, CAR "The Emperor's Old Clothes" the ACM Turing Award lecture, 1980
Extract:
The birth of Algol 68
in [ACM] (1981) [ACM] CACM 24(02) February 1981
Naur, Peter (1981) Naur, Peter "Aad van Wiingaarden's contributions to ALGOL 60" in Algorithmic languages, Proc. IFIP TC-2 International Symposium (Amsterdam, The Netherlands, 1981), J. W. de Bakker and J. C. van Vliet (Eds.), Elsevier North-Holland, Inc., New York, 1981, pp293-304.
in [ACM] (1981) [ACM] CACM 24(02) February 1981
Adams, J. (1982) Adams, J. M. review of Naur 1981 (Algol 60) in ACM Computing Reviews October 1982
Abstract
in [ACM] (1981) [ACM] CACM 24(02) February 1981
Allen, F. (1982) Allen, F. and Schwartz, J. review of Sammet and Lee HOPL conference end banquet excerpts
Abstract
in (1982) ACM Computing Reviews March 1982
Rem, M. (1982) Rem, M. review of Naur 1978
Abstract
in (1982) ACM Computing Reviews March 1982
Smillie, K. (1982) Smillie, K. W. review of Perlis 1978
Abstract
in (1982) ACM Computing Reviews March 1982
Dencker, Peter; Dürre, Karl; Heuft, Johannes (1984) Dencker, Peter; Dürre, Karl; Heuft, Johannes "Optimization of parser tables for portable compilers" pp546-572
in TOPLAS 6(4) October 1984 Lecture Notes in compute (1984) TOPLAS 6(4) October 1984 Lecture Notes in computer science Vol. 174
Bauer (2001) Bauer, Friedrich L. "A computer pioneer's talk: pioneering work in software during the 50s in Central Europe"
Extract:
Introduction
Extract:
How did software arise?
Extract:
Early Work in Munich and Zurich
Extract:
The Kellerprinzip
in [History of computing: software issues] (2002) "History of computing: software issues" Hashagen, Ulf; Keil-Slawik, Reinhard; Norberg, Arthur L. eds Proceedings of the international conference on History of computing: software issues 2002, Paderborn, Germany April 05 - 07, 2000 Springer 2002
Bauer (2001) Bauer, Friedrich L. "From the Stack Principle to Algol"
Extract:
Introduction to Zuse's PLankalkul
Extract:
Influence by Shannon
Extract:
sequential formula translation
Extract:
Recursion and the cellar principle
Extract:
arrival of Algol
Extract:
Mainz 22 and algol 58
Extract:
ICIP, BNF, stack notation
Extract:
British hostility and absence, ZMD excellence
Extract:
Paris Conference
Extract:
The ALCOR Group
Extract:
Algol 58 and the death of Algol
in [Computer Pioneers] (2001) Software Pioneers: Contributions to Software Engineering, Bonn, 28-29. 6. 2001 eds Broy, Manfred and Denert, Ernst Springer 2002
Bauer (2002) Bauer, Friedrich L. "My Years with Rutishauser"
pdf
Extract:
Introduction
Extract:
Rutishauser’s way to Stiefel
Extract:
Stanislaus, Klammerausdrücke, ALGOL
Extract:
Algol 60 and 68
in (2002) Latsis Symposium 2002 on the 50th Anniversary of the Conjugate Gradient Algorithm
George Gray (2002) George Gray "UNIVAC and ALGOL" Unisys History Newsletter
6(2) June 2002
Extract:
Information
Online copy at UNISIS History
in (2002) Latsis Symposium 2002 on the 50th Anniversary of the Conjugate Gradient Algorithm
(2002) Library of Congress Subject Headings A24
in (2002) Latsis Symposium 2002 on the 50th Anniversary of the Conjugate Gradient Algorithm
Resources
-
<program> ::= <block> | <compound statement>
<block> ::= <unlabelled block> | <label>: <block> <unlabelled block> ::= <block head> ; <compound tail> <block head> ::= ′BEGIN′ <declaration> | <block head> ; <declaration> <compound statement> ::= <unlabelled compound> | <label>: <compound statement> <unlabelled compound> ::= ′BEGIN′ <compound tail> <compound tail> ::= <statement> ′END′ | <statement> ; <compound tail> <declaration> ::= <type declaration> | <array declaration> | <switch declaration> | <procedure declaration> <type declaration> ::= <local or own type> <type list> <local or own type> ::= <type> | ′OWN′ <type> <type> ::= ′REAL′ | ′INTEGER′ | ′BOOLEAN′ <type list> ::= <simple variable> | <simple variable> , <type list> <array declaration> ::= ′ARRAY′ <array list> | <local or own type> ′ARRAY′ <array list> <array list> ::= <array segment> | <array list> , <array segment> <array segment> ::= <array identifier> [ <bound pair list> ] | <array identifier> , <array segment> <array identifier> ::= <identifier> <bound pair list> ::= <bound pair> | <bound pair list> , <bound pair> <bound pair> ::= <lower bound> : <upper bound> <upper bound> ::= <arithmetic expression> <lower bound> ::= <arithmetic expression> <switch declaration> ::= ′SWITCH′ <switch identifier> := <switch list> <switch identifier> ::= <identifier> <switch list> ::= <designational expression> | <switch list> , <designational expression> <procedure declaration> ::= ′PROCEDURE′ <procedure heading> <procedure body> | <type> ′PROCEDURE′ <procedure heading> <procedure body> <procedure heading> ::= <procedure identifier> <formal parameter part> ; <value part> <specification part> <procedure identifier> ::= <identifier> <formal parameter part> ::= <empty> | ( <formal parameter list> ) <formal parameter list> ::= <formal parameter> | <formal parameter list> <parameter delimiter> <formal parameter> <formal parameter> ::= <identifier> <value part> ::= ′VALUE′ <identifier list> ; | <empty> <specification part> ::= <empty> | <specifier> <identifier list> ; | <specification part> <specifier> <identifier list> <specifier> ::= ′STRING′ | <type> | ′ARRAY′ | <type> ′ARRAY′ | ′LABEL′ | ′SWITCH′ | ′PROCEDURE′ | <type> ′PROCEDURE′ <identifier list> ::= <identifier> | <identifier list> , <identifier> <procedure body> ::= <statement> | <code> <statement> ::= <unconditional statement> | <conditional statement> | <for statement> <unconditional statement> ::= <basic statement> | <compound statement> | <block> <basic statement> ::= <unlabelled basic statement> | <label>: <basic statement> <label> ::= <identifier> | <unsigned integer> <unlabelled basic statement> ::= <assignment statement> | <go to statement> | <dummy statement> | <procedure statement> <assignment statement> ::= <left part list> <arithmetic expression> | <left part list> <Boolean expression> <left part list> ::= <left part> | <left part list> <left part> <left part> ::= <variable> := | <procedure identifier> := <go to statement> ::= ′GOTO′ <designational expression> <designational expression> ::= <simple designational expression> | <if clause> <simple designational expression> ′ELSE′ <designational expression> <simple designational expression> ::= <label> | <switch designator> | (<designational expression>) <switch designator> ::= <switch identifier> [<subscript expression>] <dummy statement> ::= <empty> <procedure statement> ::= <procedure identifier> <actual parameter part> <actual parameter part> ::= <empty> | ( <actual parameter list> ) <actual parameter list> ::= <actual parameter> | <actual parameter list> <parameter delimiter> <actual parameter> <parameter delimiter> ::= , | ) <letter string> : ( <actual parameter> ::= <string> | <expression> | <array identifier> | <switch identifier> | <procedure identifier> <conditional statement> ::= <if statement> | <if statement> ′ELSE′ <statement> | <if clause> <for statement> | <label>: <conditional statement> <if statement> ::= <if clause> <unconditional statement> <if clause> ::= ′IF′ <Boolean expression> ′THEN′ <for statement> ::= <for clause> <statement> | <label>: <for statement> <for clause> ::= ′FOR′ <variable> := <for list> ′DO′ <for list> ::= <for list element> | <for list> , <for list element> <for list element> ::= <arithmetic expression> | <arithmetic expression> ′STEP′ <arithmetic expression> ′UNTIL′ <arithmetic expression> | <arithmetic expression> ′WHILE′ <Boolean expression> <expression> ::= <arithmetic expression> | <Boolean expression> | <designational expression> <arithmetic expression> ::= <simple arithmetic expression> | <if clause> <simple arithmetic expression> ′ELSE′ <arithmetic expression> <simple arithmetic expression> ::= <term> | <adding operator> <term> | <simple arithmetic expression> <adding operator> <term> <adding operator> ::= + | - <term> ::= <factor> | <term> <multiplying operator> <factor> <multiplying operator> ::= * | / | ÷ <factor> ::= <primary> | <factor> | <factor> ′POWER′ <primary> <primary> ::= <unsigned number> | <variable> | <function designator> | ( <arithmetic expression> ) <unsigned number> ::= <decimal number> | <exponential part> | <decimal number> <exponential part> <decimal number> ::= <unsigned integer> | <decimal fraction> | <unsigned integer> <decimal fraction> <unsigned integer> ::= <digit> | <unsigned integer> <digit> <decimal fraction> ::= . <unsigned integer> <exponential part> ::= E <integer> <integer> ::= <unsigned integer> | + <unsigned integer> | - <unsigned integer> <Boolean expression> ::= <simple Boolean> | <if clause> <simple Boolean> ′ELSE′ <Boolean expression> <simple Boolean> ::= <implication> | <simple Boolean> ′EQUIV′ <implication> <implication> ::= <Boolean term> | <implication> ′IMPL′ <Boolean term> <Boolean term> ::= <Boolean factor> | <Boolean term> ′OR′ <Boolean factor> <Boolean factor> ::= <Boolean secondary> | <Boolean factor> ′AND′ <Boolean secondary> <Boolean secondary> ::= <Boolean primary> | ′NOT′ <Boolean primary> <Boolean primary> ::= <logical value> | <variable> | <function designator> | <relation> | ( <Boolean expression> ) <relation> ::= <simple arithmetic expression> <relational operator> <simple arithmetic expression> <relational operator> ::= < | ¾ | = | „ | > | ‚ | ′LESS′ | ′NOTGREATER′ | ′EQUAL′ | ′NOTLESS′ | ′GREATER′ | ′NOTEQUAL′ <function designator> ::= <procedure identifier> <actual parameter part> <variable> ::= <simple variable> | <subscripted variable> <simple variable> ::= <variable identifier> <variable identifier> ::= <identifier> <subscripted variable> ::= <array identifier> [ <subscript list> ] <subscript list> ::= <subscript expression> | <subscript list> , <subscript expression> <subscript expression> ::= <arithmetic expression> <string> ::= "<open string>" <open string> ::= <proper string> "<open string>" | <open string><open string> <proper string> ::= <any sequence of symbols not containing " > | <empty> <letter string> ::= <letter> | <letter string> <letter> <identifier> ::= letter> | <identifier> <letter> | <identifier> <digit> <basic symbol> ::= <letter> | <digit> | <logical value> | <delimiter> <letter> ::= a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z <digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 <logical value> ::= ′TRUE′ | ′FALSE′ <delimiter> ::= <operator> | <separator> | <bracket> | <declarator> | <specificator> <operator> ::= <arithmetic operator> | <relational operator> | <logical operator> | <sequential operator> <arithmetic operator> ::= + | - | * | / | ÷ | ′POWER′ <relational operator> ::= < | ¾ | = | „ | > | ‚ | ′LESS′ | ′NOTGREATER′ | ′EQUAL′ | ′NOTLESS′ | ′GREATER′ | ′NOTEQUAL′ <logical operator> ::= ′EQUIV′ | ′IMPL′ | ′OR′ | ′AND′ | ′NOT′ <sequential operator> ::= ′GOTO′ | ′IF′ | ′THEN′ | ′ELSE′ | ′FOR′ | ′DO′ <separator> ::= , | . | E | : | ; | := | _ | ′STEP′ | ′UNTIL′ | ′WHILE′ | ′COMMENT′ <bracket> ::= ( | ) | [ | ] | ` | ′ | ′BEGIN′ | ′END′ <declarator> ::= ′OWN′ | ′BOOLEAN′ | ′INTEGER′ | ′REAL′ | ′ARRAY′ | ′SWITCH′ | ′PROCEDURE′ <specificator> ::= ′STRING′ | ′LABEL′ | ′VALUE′ ');">: Grammar
Search in:
Google
Google scholar
World Cat
Yahoo
Overture
DBLP
Monash bib
NZ
IEEE 
ACM portal
CiteSeer
CSB
ncstrl
jstor
Bookfinder
|