1 #include <stdio.h>
2 #include <string.h>
3 #include <assert.h>
8 "(* Main module *)"
9 "MODULE Test;"
10 "IMPORT Out;"
11 ""
12 "VAR"
13 " byte : BYTE;"
14 " short : SHORTINT;"
15 " int : INTEGER;"
16 " long : LONGINT;"
17 " real : REAL;"
18 " longreal : LONGREAL;"
19 ""
20 "BEGIN"
21 " Out.Open;"
22 " byte := 127;"
23 " int := 666 DIV 2;"
24 " long := int;"
25 " real := (4 / 1) - (4 / 3) + (4 / 5) - (4 / 7) + (4 / 9) - (4 / 11) + (4 / 13) - (4 / 15) + (4 / 17);"
26 " longreal := (4 / 1) - (4 / 3) + (4 / 5) - (4 / 7) + (4 / 9) - (4 / 11) + (4 / 13) - (4 / 15) + (4 / 17);"
27 " Out.Int(666, 0); Out.Ln;"
28 " Out.Int(byte, 0); Out.Ln;"
29 " Out.Real(real, 0); Out.Ln;"
30 " Out.LongReal(longreal, 0); Out.Ln;"
31 "END Test."
32 ;
34 // PROCEDURE Char* (ch : CHAR);
35 // PROCEDURE String* (str : ARRAY OF CHAR);
38 "MODULE Out;"
39 " PROCEDURE Open*;"
40 " END Open;"
41 ""
42 " PROCEDURE Int*(i, n : LONGINT);"
43 " END Int;"
44 ""
45 " PROCEDURE Real*(x : REAL; n : INTEGER);"
46 " END Real;"
47 ""
48 " PROCEDURE LongReal*(x : LONGREAL; n : INTEGER);"
49 " END LongReal;"
50 ""
51 " PROCEDURE Ln*;"
52 " END Ln;"
53 ""
54 "END Out."
55 ;
62 {
64 {
66 }
68 {
70 }
71 else
72 {
74 }
75 }
80 {
81 }
86 {
91 {
93 }
95 }
100 {
105 {
107 }
109 }
114 {
116 }
119 {
128 }
131 {
134 }
136 int
138 {
144 // init_system_modules();
146 // oberon_generator_dump(ctx, "dump.txt");
148 // start_module();
152 }