---------------------------------------------------------------| | | | | 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 | |--------------------------------------------------------------| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | ----------------------------------------------------------------