CO538 Anonymous Questions and Answers Keyword Index |
This page provides a keyword index to questions and answers. Clicking on a keyword will take you to a page containing all questions and answers for that keyword, grouped by year.
To submit a question, use the anonymous questions page. You may find the keyword index and/or top-level index useful for locating past questions and answers.
Keyword reference for main
2007 |
Submission reference: IN1451
hi, I am using Transterpreter for Windows Jva based IDE version 1.4.
I am trying to compile simple code taken from Peter Welch Slides one example is:
PROC numbers (CHAN INT out!)
INT n:
SEQ
n := 0
WHILE TRUE
SEQ
out ! n
n := n + 1
:
after compilation it gives warning:
Compiling: Test5.occ
Not enough parameters in top level.
Expected 3 parameters, ("CHAN BYTE" "CHAN BYTE" "CHAN BYTE")
Given: 1, ("CHAN INT")
skroc: Couldn't slink one or more files.
skroc exited with error code: 1
Why it is asking for three parameters. Please help.
Do the occam programs have some starting and ending methods like in Java and C:
public static void main(){}
void main (void){}
We did not tell you about separate compilation of individual processes in this module. We only told you how to compile main occam-pi programs.
In the first terminal class of the module, we showed you lots
of main occam-pi programs (from your examples folder,
also on raptor, in \courses\co631\examples\).
The structure of main programs is explained in the
README.txt file in that folder.
An occam-pi main program consists of a sequence of declarations
(e.g. VAL constants, PROTOCOLs,
TYPEs, PROCs etc.). The last
declaration must be a PROC with the header:
PROC foo (CHAN BYTE keyboard?, screen!, error!)
It is this last PROC, known as the top level
process, that the system runs from the compiled code
(and corresponds to the Java and C main).
The PROC and channel parameter names are the programmer's
choice – but the header structure must be as above.
It looks like you were trying to compile a file containing only
the PROC numbers quoted in your question.
That is not a main program and will not compile, with the compiler
complaining about the lack of a top level PROC
with the three mandated channel parameters.
Every exercise, example and assessment program in the module had this structure.
Keywords: main
|
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License. |