Home
   News
   About the project
   Language
   Compiler download
   Test suite
   Blog on the programming model
   Zonnon @ OCP Forum
   Collection of examples

TEST: 0712T02-T

category

status

Compilation and execution results for Windows (first) and Mono (second)
PASSED Compiler: 1.2.8.0
Date, time: 2010.08.06, 18:06
Compilation: SUCCESS
Execution: SUCCESS
PASSED Compiler: 1.2.8.0
Date, time: 2010.08.06, 22:22
Compilation: SUCCESS
Execution: SUCCESS
(0, 0) Assembly reference not resolved: System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a.

code

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
50  
51  
52  
53  
 module {protected} Main;  
   
 protocol P = (  
      ADD, GET, TOTAL, QUIT, OK,  
      dialog = { ADD string ?OK | GET integer ?string | TOTAL ?integer } QUIT  
 );  
   
 const max = 100;  
 var top: integer;  
     data: array max of string;  
       
 activity A implements P;  
 var kw: P; s: string; i: integer;  
 begin   
   writeln("Service Initiated");  
   loop  
      accept kw;  
      case kw of  
        P.ADD:  
          accept s;   
          data[top] := s;   
          top := top + 1;  
          return P.OK;  
      | P.GET:  
           accept i; return data[i];  
      | P.TOTAL:  
           return top;  
      | P.QUIT:  
           exit  
      else  
      end  
   end;  
   writeln("Service Stopped");  
 end A;  
   
 var p: A; i, total: integer; name: string; kw: P;  
 begin  
      do  
           p := new A;  
           kw := p( P.ADD, "Max" );  
           kw := p( P.ADD, "Fabienne" );  
           kw := p( P.ADD, "Nina" );  
           total := p( P.TOTAL );       
           for i:= 0 to total - 1 do  
                name := p( P.GET, i );  
                writeln( name );  
           end;  
           p(P.QUIT);  
      on ProtocolMismatch do  
           halt(0);       
      end;       
      halt(1);  
 end Main. 

information

  • PASSED - overall positive decision about the test
  • NOT PASSED - overall negative decision about the test
  • SUCCESS - compilation / execution successful
  • ERROR - compilation failed with normal syntax or semantic error
  • ABORT - compilation failed because of an internal compiler error
  • NOT RUN - the test was not / not supposed to be executed
  • FAIL - execution failed
Copyright © 2010 ETH Zurich, Switzerland