Initial revision
This commit is contained in:
42
doc/occam/p4
Normal file
42
doc/occam/p4
Normal file
@@ -0,0 +1,42 @@
|
||||
.NH
|
||||
Particular details
|
||||
.NH 2
|
||||
Lower case/Upper case
|
||||
.PP
|
||||
Keywords must be either fully written in lower case or in upper case, thus
|
||||
\fBPAR\fP is equivalent to \fBpar\fP but \fBPar\fP is not a keyword. Identifiers
|
||||
may be of mixed case. Different styles are used in our examples just to indicate
|
||||
what's accepted by the compiler.
|
||||
.NH 2
|
||||
File inclusion
|
||||
.PP
|
||||
The C preprocessor is applied to the input file before
|
||||
compilation, so that files containing useful \fBPROC\fP and \fBDEF\fP
|
||||
declarations can be used in your program by using the \fB#include\fP-directive
|
||||
of the preprocessor.
|
||||
.NH 2
|
||||
Substitution
|
||||
.PP
|
||||
Named processes are not textually substituted. A procedure call is used instead.
|
||||
The semantics of occam substitution imply this by letting a global variable
|
||||
(i.e. not declared inside the named process' body) be found where the named
|
||||
process is defined and not where it is substituted.
|
||||
.NH 2
|
||||
ANY
|
||||
.PP
|
||||
According to the occam syntax the \fBANY\fP keyword may be the only argument of
|
||||
an input or output process. Thus,
|
||||
.DS
|
||||
.ft 5
|
||||
c ? ANY; x
|
||||
.ft
|
||||
.DE
|
||||
is not allowed. Because it was easy to add, and it was used by some programs,
|
||||
our compiler allows it. (If you prefer portability you are advised not to make
|
||||
use of it.)
|
||||
.NH 2
|
||||
Configuration
|
||||
.PP
|
||||
The special configuration keywords like \fBPLACED\fP, \fBALLOCATE\fP, \fBPORT\fP
|
||||
and \fBLOAD\fP are not implemented. Only \fBPRI\fP works because \fBPAR\fP and
|
||||
\fBALT\fP work the same without it.
|
||||
Reference in New Issue
Block a user