241 lines
15 KiB
Plaintext
241 lines
15 KiB
Plaintext
|
----------------------------------------------------------------
|
||
|
| |
|
||
|
| |
|
||
|
| Niklaus Wirth |
|
||
|
| |
|
||
|
| |
|
||
|
| PPPPPP A SSSSS CCCC A L |
|
||
|
| P P A A S S C C A A L |
|
||
|
| P P A A S C A A L |
|
||
|
| PPPPPP AAAAAAA SSSSS C AAAAAAA L |
|
||
|
| P A A S C A A L |
|
||
|
| P A A S S C C A A L |
|
||
|
| P A A SSSSS CCCC A A LLLLLLL |
|
||
|
| |
|
||
|
| |
|
||
|
| Language Summary |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
|Written by Jonathan Bowen |
|
||
|
| Programming Research Group |
|
||
|
| Oxford University Computing Laboratory |
|
||
|
| 8-11 Keble Road |
|
||
|
| Oxford OX1 3QD |
|
||
|
| England |
|
||
|
| |
|
||
|
| Tel +44-865-273840 |
|
||
|
| |
|
||
|
|Created February 1982 |
|
||
|
|Updated June 1985 |
|
||
|
|Issue 1.1 Copyright (C) J.P.Bowen 1985|
|
||
|
----------------------------------------------------------------
|
||
|
----------------------------------------------------------------
|
||
|
|Feature |Description |
|
||
|
|------------------+-------------------------------------------|
|
||
|
| AND |Logical conjunction operator |
|
||
|
| ARRAY |Array type |
|
||
|
| BEGIN |Start new block |
|
||
|
| CASE |Case statement |
|
||
|
| CONST |Constant declarations |
|
||
|
| DIV |Integer division operator |
|
||
|
| DO |Used with WHILE, FOR and WITH statements |
|
||
|
| DOWNTO |Step -1 for FOR loop clause |
|
||
|
| ELSE |Alternative for IF clause |
|
||
|
| END |End of BEGIN, CASE or RECORD clause |
|
||
|
| FILE |File type declaration |
|
||
|
| FOR |FOR loop statement |
|
||
|
| FUNCTION |Start of new function |
|
||
|
| GOTO |GOTO statement |
|
||
|
| IF |IF statement |
|
||
|
| IN |Set membership operator |
|
||
|
| LABEL |Label for GOTO statement |
|
||
|
| MOD |Modulus operator |
|
||
|
| NIL |Null pointer |
|
||
|
| NOT |Logical negation operator |
|
||
|
| OF |Used with CASE, ARRAY, FILE, SET and RECORD|
|
||
|
| OR |Logical disjunction operator |
|
||
|
| PACKED |Packed type |
|
||
|
| PROCEDURE |Start of new procedure |
|
||
|
| PROGRAM |Start of program |
|
||
|
| RECORD |Record type |
|
||
|
| REPEAT |REPEAT statement |
|
||
|
| SET |Set type |
|
||
|
| THEN |Used with IF statement |
|
||
|
| TO |Step +1 for FOR loop clause |
|
||
|
| TYPE |Type declarations |
|
||
|
| UNTIL |End of REPEAT clause |
|
||
|
| VAR |Variable declarations |
|
||
|
| WHILE |WHILE statement |
|
||
|
| WITH |WITH variable(s) statement |
|
||
|
|------------------+-------------------------------------------|
|
||
|
| := |Assignment operator or FOR loop |
|
||
|
| + |Addition, set union or identity operator |
|
||
|
| - |Subtraction, set difference or inv. op. |
|
||
|
| * |Multiplication or set intersection operator|
|
||
|
| / |Real division operator |
|
||
|
| = |Relational equality op., CONST or TYPE sep.|
|
||
|
| <> |Relational inequality operator |
|
||
|
| < |Relational less than or set inclusion op. |
|
||
|
| > |Relational greater than or set incl. op. |
|
||
|
| <= |Relational less/equal or set incl. op. |
|
||
|
| => |Relational greater/equal or set incl. op. |
|
||
|
| ^ |Pointer |
|
||
|
| . |Decimal point, field identifier or end |
|
||
|
| E |Exponent in real number |
|
||
|
| .. |Range |
|
||
|
| , |Expression, field or identifier separator |
|
||
|
| ; |Statement separator |
|
||
|
| : |Label, VAR type or CASE constant separator |
|
||
|
| [ ] |Array subscript |
|
||
|
| ( ) |Parameters or expression precidence |
|
||
|
| 's' |Character string |
|
||
|
|------------------+-------------------------------------------|
|
||
|
| BOOLEAN |Logical TYPE |
|
||
|
| CHAR |Character TYPE |
|
||
|
| FALSE |Boolean false |
|
||
|
| INPUT |Standard input file |
|
||
|
| INTEGER |Signed integer TYPE |
|
||
|
| MAXINT |Maximum integer |
|
||
|
| OUTPUT |Standard output file |
|
||
|
| REAL |Floating point number TYPE |
|
||
|
| TEXT |Text file (FILE OF CHAR) |
|
||
|
| TRUE |Boolean true |
|
||
|
|--------------------------------------------------------------|
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
----------------------------------------------------------------
|
||
|
----------------------------------------------------------------
|
||
|
|Feature |Description |
|
||
|
|------------------+-------------------------------------------|
|
||
|
| ABS(x) |Return absolute value of parameter |
|
||
|
| ARCTAN(x) |Return real arctangent of parameter |
|
||
|
| CHR(x) |Return character with parameter value |
|
||
|
| COS(x) |Return real cosine of parameter |
|
||
|
| DISPOSE(p,t,...) |Release previously allocated space on heap |
|
||
|
| EOF(f) |Return boolean end of file indication |
|
||
|
| EOLN(f) |Return boolean end of line indication |
|
||
|
| EXP(x) |Return real exponential of parameter |
|
||
|
| GET(f) |Get next entry in file |
|
||
|
| LN(x) |Return real natural logarithm of parameter |
|
||
|
| NEW(p,t,...) |Allocate new space on heap |
|
||
|
| ODD(x) |Return true value if parameter is odd |
|
||
|
| ORD(x) |Return ordinal value of paramter |
|
||
|
| PAGE(f) |New page on file |
|
||
|
| PRED(x) |Return predecessor of parameter |
|
||
|
| PUT(f) |Put entry on file |
|
||
|
| READ(f,a,...) |Read from file |
|
||
|
| READLN(f,a,...) |Read line from file |
|
||
|
| RESET(f) |Reset file for reading |
|
||
|
| REWRITE(f) |Reset file for writing |
|
||
|
| ROUND(x) |Return integer rounded value of real param.|
|
||
|
| SIN(x) |Return real sine of parameter |
|
||
|
| SQR(x) |Return square of real or integer parameter |
|
||
|
| SQRT(x) |Return real square root of parameter |
|
||
|
| SUCC(x) |Return successor of parameter |
|
||
|
| TRUNC(x) |Return integer truncated value of real par.|
|
||
|
| WRITE(f,a,...) |Write to file |
|
||
|
| WRITELN(f,a,...) |Write line to file |
|
||
|
|------------------+-------------------------------------------|
|
||
|
| a |Optional I/O routine arguments |
|
||
|
| e |Expression |
|
||
|
| f |Optional file name (default = INPUT/OUTPUT)|
|
||
|
| n |Integer number |
|
||
|
| p |Pointer type |
|
||
|
| s |String of characters |
|
||
|
| t |Optional tag fields |
|
||
|
| x |Function parameter |
|
||
|
|--------------------------------------------------------------|
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
| |
|
||
|
----------------------------------------------------------------
|