From e60f8acb9f735f08781073055c411fc300e910cb Mon Sep 17 00:00:00 2001 From: Antranig Vartanian Date: Sat, 11 May 2024 21:39:32 +0400 Subject: [PATCH] No need for these ob2 files anymore --- .../partest.Mod.ob2 | 63 ----------------- examples/arrays/Arrays.Mod.ob2 | 42 ------------ examples/case/Case.Mod.ob2 | 14 ---- examples/constants/Constants.Mod.ob2 | 14 ---- examples/enums_example/0/Days.Mod.ob2 | 68 ------------------- examples/enums_example/0/test.Mod.ob2 | 22 ------ examples/enums_example/1/Days.Mod.ob2 | 33 --------- examples/enums_example/1/test.Mod.ob2 | 22 ------ examples/for/For.Mod.ob2 | 19 ------ examples/hello-world/Console/Hello.Mod.ob2 | 10 --- examples/hello-world/Out/Hello.Mod.ob2 | 9 --- examples/ifelse/IfElse.Mod.ob2 | 49 ------------- .../function-procedure/Square.Mod.ob2 | 20 ------ .../procedures/procedure/Procedure.Mod.ob2 | 15 ---- .../procedures/var-parameter/VarParam.Mod.ob2 | 24 ------- examples/records/Records.Mod.ob2 | 53 --------------- examples/recursion/Fib.Mod.ob2 | 33 --------- examples/recursion/Gcd.Mod.ob2 | 31 --------- examples/value-types/Values.Mod.ob2 | 12 ---- examples/variables/Variables.Mod.ob2 | 31 --------- examples/while/While.Mod.ob2 | 17 ----- 21 files changed, 601 deletions(-) delete mode 100644 examples/arguments/unixstyle_oberon_traditional/partest.Mod.ob2 delete mode 100644 examples/arrays/Arrays.Mod.ob2 delete mode 100644 examples/case/Case.Mod.ob2 delete mode 100644 examples/constants/Constants.Mod.ob2 delete mode 100644 examples/enums_example/0/Days.Mod.ob2 delete mode 100644 examples/enums_example/0/test.Mod.ob2 delete mode 100644 examples/enums_example/1/Days.Mod.ob2 delete mode 100644 examples/enums_example/1/test.Mod.ob2 delete mode 100644 examples/for/For.Mod.ob2 delete mode 100644 examples/hello-world/Console/Hello.Mod.ob2 delete mode 100644 examples/hello-world/Out/Hello.Mod.ob2 delete mode 100644 examples/ifelse/IfElse.Mod.ob2 delete mode 100644 examples/procedures/function-procedure/Square.Mod.ob2 delete mode 100644 examples/procedures/procedure/Procedure.Mod.ob2 delete mode 100644 examples/procedures/var-parameter/VarParam.Mod.ob2 delete mode 100644 examples/records/Records.Mod.ob2 delete mode 100644 examples/recursion/Fib.Mod.ob2 delete mode 100644 examples/recursion/Gcd.Mod.ob2 delete mode 100644 examples/value-types/Values.Mod.ob2 delete mode 100644 examples/variables/Variables.Mod.ob2 delete mode 100644 examples/while/While.Mod.ob2 diff --git a/examples/arguments/unixstyle_oberon_traditional/partest.Mod.ob2 b/examples/arguments/unixstyle_oberon_traditional/partest.Mod.ob2 deleted file mode 100644 index b15b545..0000000 --- a/examples/arguments/unixstyle_oberon_traditional/partest.Mod.ob2 +++ /dev/null @@ -1,63 +0,0 @@ -MODULE partest; - -IMPORT Oberon, Texts; - -CONST - argStr0 = "str"; (* we only have two types of args, one string and one int *) - argInt0 = "int"; (* i. e. -str somestring -int somenumber *) - -VAR - W: Texts.Writer; (* for console output *) - S: Texts.Scanner; T: Texts.Text; -BEGIN - Texts.OpenWriter(W); - Texts.WriteString(W, "hello, world, let's see which arguments do we get"); Texts.WriteLn(W); - - (* open arguments scanner *) - Texts.OpenScanner(S, Oberon.Par.text, Oberon.Par.pos); - - WHILE ~S.eot DO - Texts.Scan(S); - - IF S.class = Texts.Char THEN (* do we get '-' sign ? *) - IF S.c = "-" THEN - Texts.Scan(S); - IF S.class = Texts.Name THEN (* we got the key *) - Texts.WriteString(W, "key: "); Texts.WriteString(W, S.s); Texts.WriteLn(W); - (* now get the value *) - IF S.s = argStr0 THEN - Texts.Scan(S); - IF S.class = Texts.Name THEN - Texts.WriteString(W, "value: "); Texts.WriteString (W, S.s); Texts.WriteLn(W); Texts.Append(Oberon.Log, W.buf); - ELSE - Texts.WriteString(W, "string expected"); Texts.WriteLn(W); - Texts.Append(Oberon.Log, W.buf); - HALT(1); - END; - ELSIF S.s = argInt0 THEN - Texts.Scan(S); - IF S.class = Texts.Int THEN - Texts.WriteString(W, "value: "); Texts.WriteInt (W, S.i, 0); Texts.WriteLn(W); Texts.Append(Oberon.Log, W.buf); - ELSE - Texts.WriteString(W, "integer expected"); Texts.WriteLn(W); - Texts.Append(Oberon.Log, W.buf); - HALT(1); - END; - END; - ELSE - (* we were expecting characters after the '-' sign *) - Texts.WriteString(W, "key name expected"); Texts. WriteLn(W); - Texts.Append(Oberon.Log, W.buf); - HALT(1); - END; - END - ELSE - Texts.WriteString(W, "key option must start with '-' sign "); Texts.WriteLn(W); - HALT(1); - END; (* if got '-' *) - Oberon.Par.pos := Texts.Pos(S); - Texts.Append(Oberon.Log, W.buf) - END; (* while *) - - -END partest. diff --git a/examples/arrays/Arrays.Mod.ob2 b/examples/arrays/Arrays.Mod.ob2 deleted file mode 100644 index 50ef185..0000000 --- a/examples/arrays/Arrays.Mod.ob2 +++ /dev/null @@ -1,42 +0,0 @@ -MODULE arrays; - -IMPORT Out; - -VAR - tmp : INTEGER; - matrix : ARRAY 3 OF ARRAY 3 OF INTEGER; - i, v, k : INTEGER; - -BEGIN - v := 1; - FOR i := 0 TO LEN(matrix) - 1 DO - FOR k := 0 TO LEN(matrix[i]) - 1 DO - matrix[i][k] := v; - INC(v); - END; - END; - - FOR i := 0 TO LEN(matrix) - 1 DO - FOR k := 0 TO LEN(matrix[i]) - 1 DO - Out.Int(matrix[i][k], 0); Out.String(" "); - END; - Out.Ln; - END; - - FOR i := 0 TO LEN(matrix) - 1 DO - FOR k := i + 1 TO LEN(matrix[i]) - 1 DO - tmp := matrix[i][k]; - matrix[i][k] := matrix[k][i]; - matrix[k][i] := tmp; - END; - END; - - Out.Ln; Out.Ln; - - FOR i := 0 TO LEN(matrix) - 1 DO - FOR k := 0 TO LEN(matrix[i]) - 1 DO - Out.Int(matrix[i][k], 0); Out.String(" "); - END; - Out.Ln; - END; -END arrays. diff --git a/examples/case/Case.Mod.ob2 b/examples/case/Case.Mod.ob2 deleted file mode 100644 index ab6ad5b..0000000 --- a/examples/case/Case.Mod.ob2 +++ /dev/null @@ -1,14 +0,0 @@ -MODULE case; - - -IMPORT Out, Modules; - - -BEGIN - CASE Modules.ArgCount - 1 OF - 0 : Out.String("There are no arguments"); - | 1 : Out.String("There is one argument"); - | 2 : Out.String("There are two arguments"); - ELSE Out.String("There are more than two arguments") END; - Out.Ln; -END case. diff --git a/examples/constants/Constants.Mod.ob2 b/examples/constants/Constants.Mod.ob2 deleted file mode 100644 index 47dc4c4..0000000 --- a/examples/constants/Constants.Mod.ob2 +++ /dev/null @@ -1,14 +0,0 @@ -MODULE constants; - -IMPORT Out; - -CONST - s = "if it moves, compile it!"; - n = 42; - m = n * 2; - -BEGIN - Out.String(s); Out.Ln; - Out.Int(n, 0); Out.Ln; - Out.Int(m, 0); Out.Ln; -END constants. diff --git a/examples/enums_example/0/Days.Mod.ob2 b/examples/enums_example/0/Days.Mod.ob2 deleted file mode 100644 index 8611a21..0000000 --- a/examples/enums_example/0/Days.Mod.ob2 +++ /dev/null @@ -1,68 +0,0 @@ -MODULE Days; - - TYPE - Day* = POINTER TO DayDesc; - DayDesc = RECORD - next, prev : Day - END; - Week = ARRAY 7 OF Day; - - VAR - sun*, mon*, tue*, wed*, thu*, fri*, sat* : Day; - week: Week; - - PROCEDURE Next*(d : Day): Day; - BEGIN - RETURN d.next - END Next; - - PROCEDURE Prev*(d: Day): Day; - BEGIN - RETURN d.prev; - END Prev; - - PROCEDURE inc(VAR j: SHORTINT); - BEGIN - IF j = 6 THEN - j := 0 - ELSE - INC(j) - END - END inc; - - PROCEDURE dec(VAR j: SHORTINT); - BEGIN - IF j = 0 THEN - j := 6 - ELSE - DEC(j) - END - END dec; - - PROCEDURE init(VAR w : Week); - VAR - i,j : SHORTINT; - BEGIN - i := 0; - REPEAT - j := i; inc(j); - w[i].next := w[j]; - j := i; dec(j); - w[i].prev := w[j]; - INC(i) - UNTIL i > 6; - END init; - -BEGIN - NEW(sun); NEW(mon); NEW(tue); NEW(wed); NEW(thu); NEW(fri); NEW(sat); - week[0] := sun; - week[1] := mon; - week[2] := tue; - week[3] := wed; - week[4] := thu; - week[5] := fri; - week[6] := sat; - - init(week); - -END Days. diff --git a/examples/enums_example/0/test.Mod.ob2 b/examples/enums_example/0/test.Mod.ob2 deleted file mode 100644 index 8d49b34..0000000 --- a/examples/enums_example/0/test.Mod.ob2 +++ /dev/null @@ -1,22 +0,0 @@ -MODULE test; - -IMPORT Days, Out; - -VAR today, yesterday, tomorrow: Days.Day; - -BEGIN - today := Days.mon; (*init*) - - yesterday := Days.Prev(today); - IF yesterday = Days.sun - THEN - Out.String("it works!"); Out.Ln - END; - tomorrow := Days.Next(today); - - IF tomorrow = Days.tue - THEN - Out.String("it works!"); Out.Ln - END; - -END test. diff --git a/examples/enums_example/1/Days.Mod.ob2 b/examples/enums_example/1/Days.Mod.ob2 deleted file mode 100644 index a8ab1ad..0000000 --- a/examples/enums_example/1/Days.Mod.ob2 +++ /dev/null @@ -1,33 +0,0 @@ -MODULE Days; - - TYPE - Day* = POINTER TO DayDesc; - DayDesc = RECORD - num: INTEGER - END; - Week* = ARRAY 7 OF Day; - VAR - sun*, mon*, tue*, wed*, thu*, fri*, sat* : Day; - week: Week; - - PROCEDURE Next*(d : Day): Day; - BEGIN RETURN week[(d.num + 1) MOD 7]; - END Next; - - PROCEDURE Prev*(d: Day): Day; - BEGIN RETURN week[(d.num - 1) MOD 7]; - END Prev; - - PROCEDURE day(VAR d: Day; num: INTEGER); - BEGIN NEW(d); d.num := num; week[num] := d; - END day; - -BEGIN - day(sun, 0); - day(mon, 1); - day(tue, 2); - day(wed, 3); - day(thu, 4); - day(fri, 5); - day(sat, 6); -END Days. diff --git a/examples/enums_example/1/test.Mod.ob2 b/examples/enums_example/1/test.Mod.ob2 deleted file mode 100644 index 8d49b34..0000000 --- a/examples/enums_example/1/test.Mod.ob2 +++ /dev/null @@ -1,22 +0,0 @@ -MODULE test; - -IMPORT Days, Out; - -VAR today, yesterday, tomorrow: Days.Day; - -BEGIN - today := Days.mon; (*init*) - - yesterday := Days.Prev(today); - IF yesterday = Days.sun - THEN - Out.String("it works!"); Out.Ln - END; - tomorrow := Days.Next(today); - - IF tomorrow = Days.tue - THEN - Out.String("it works!"); Out.Ln - END; - -END test. diff --git a/examples/for/For.Mod.ob2 b/examples/for/For.Mod.ob2 deleted file mode 100644 index 8e110bd..0000000 --- a/examples/for/For.Mod.ob2 +++ /dev/null @@ -1,19 +0,0 @@ -MODULE for; - -IMPORT Out; - -VAR - i : INTEGER; - - -BEGIN - Out.String("i is "); Out.Int(i, 0); Out.Ln; - Out.String("For loop started"); Out.Ln; - FOR i := 0 TO 10 DO - Out.String("i : "); Out.Int(i, 0); Out.Ln; - END; - Out.String("For-By loop started"); Out.Ln; - FOR i := 0 TO 10 BY 2 DO - Out.String("i : "); Out.Int(i, 0); Out.Ln; - END; -END for. diff --git a/examples/hello-world/Console/Hello.Mod.ob2 b/examples/hello-world/Console/Hello.Mod.ob2 deleted file mode 100644 index 479a6ea..0000000 --- a/examples/hello-world/Console/Hello.Mod.ob2 +++ /dev/null @@ -1,10 +0,0 @@ -MODULE hello; - - -IMPORT Console; - - -BEGIN - Console.String("Hello World!"); - Console.Ln -END hello. diff --git a/examples/hello-world/Out/Hello.Mod.ob2 b/examples/hello-world/Out/Hello.Mod.ob2 deleted file mode 100644 index 80346a2..0000000 --- a/examples/hello-world/Out/Hello.Mod.ob2 +++ /dev/null @@ -1,9 +0,0 @@ -MODULE hello; - - -IMPORT Out; - - -BEGIN - Out.String("Hello, World"); Out.Ln -END hello. diff --git a/examples/ifelse/IfElse.Mod.ob2 b/examples/ifelse/IfElse.Mod.ob2 deleted file mode 100644 index 81ca1d7..0000000 --- a/examples/ifelse/IfElse.Mod.ob2 +++ /dev/null @@ -1,49 +0,0 @@ -MODULE ifelse; - - -IMPORT Out; - -VAR n, m : INTEGER; - - -BEGIN - n := 8; m := 4; - - IF n MOD m = 0 THEN - Out.Int(n,0); Out.String(" is divisible by "); Out.Int(m,0); Out.Ln; - END; - - n := 7; m := 6; - - IF n * m = 42 THEN - Out.Int(n,0); Out.String(" times "); Out.Int(m,0); Out.String(" equals 42"); Out.Ln; - END; - - IF n # m THEN Out.Int(n,0); Out.String(" does not equal "); Out.Int(m,0); Out.Ln; END; - - IF ODD(n) - THEN - Out.Int(n,0); Out.String(" is odd"); Out.Ln; - ELSE - Out.Int(n,0); Out.String(" is even"); Out.Ln; - END; - - IF ~ODD(m) - THEN - Out.Int(m,0); Out.String(" is even"); Out.Ln; - ELSE - Out.Int(m,0); Out.String(" is odd"); Out.Ln; - END; - - n := 9; - - IF n < 0 - THEN - Out.Int(n, 0); Out.String(" is negative"); Out.Ln; - ELSIF n < 10 - THEN - Out.Int(n, 0); Out.String(" has 1 digit"); Out.Ln; - ELSE - Out.Int(n, 0); Out.String(" has multiple digits"); Out.Ln; - END; -END ifelse. diff --git a/examples/procedures/function-procedure/Square.Mod.ob2 b/examples/procedures/function-procedure/Square.Mod.ob2 deleted file mode 100644 index f972edf..0000000 --- a/examples/procedures/function-procedure/Square.Mod.ob2 +++ /dev/null @@ -1,20 +0,0 @@ -MODULE square; - - -IMPORT Out; - - -VAR s : INTEGER; - - -PROCEDURE squared(x : INTEGER): INTEGER; -BEGIN - RETURN x * x -END squared; - - -BEGIN - s := squared(7); - Out.Int(s, 0); Out.Ln; - Out.Int(squared(8), 0); Out.Ln; -END square. diff --git a/examples/procedures/procedure/Procedure.Mod.ob2 b/examples/procedures/procedure/Procedure.Mod.ob2 deleted file mode 100644 index c832008..0000000 --- a/examples/procedures/procedure/Procedure.Mod.ob2 +++ /dev/null @@ -1,15 +0,0 @@ -MODULE proc; - - -IMPORT Out; - - -PROCEDURE printSum(a, b : INTEGER); -BEGIN - Out.Int(a + b, 0); Out.Ln -END printSum; - - -BEGIN - printSum(6, 9) -END proc. diff --git a/examples/procedures/var-parameter/VarParam.Mod.ob2 b/examples/procedures/var-parameter/VarParam.Mod.ob2 deleted file mode 100644 index 19d1d8a..0000000 --- a/examples/procedures/var-parameter/VarParam.Mod.ob2 +++ /dev/null @@ -1,24 +0,0 @@ -MODULE varparam; - - -IMPORT Out; - - -VAR a, b : INTEGER; - - -PROCEDURE swapVals(VAR x, y : INTEGER); -VAR tmp : INTEGER; -BEGIN - tmp := x; x := y; y := tmp; -END swapVals; - - -BEGIN - a := 6; b := 9; - Out.String("initial "); Out.Ln; - Out.String("a : "); Out.Int(a, 0); Out.String("; b : "); Out.Int(b, 0); Out.Ln; - swapVals(a, b); - Out.String("after swap"); Out.Ln; - Out.String("a : "); Out.Int(a, 0); Out.String("; b : "); Out.Int(b, 0); Out.Ln; -END varparam. diff --git a/examples/records/Records.Mod.ob2 b/examples/records/Records.Mod.ob2 deleted file mode 100644 index 8dc22a2..0000000 --- a/examples/records/Records.Mod.ob2 +++ /dev/null @@ -1,53 +0,0 @@ -MODULE record; - - -IMPORT Out; - - -CONST - Male = 1; - Female = 2; - - -TYPE - SexDesc = INTEGER; - Person = RECORD - Name : ARRAY 32 OF CHAR; - Age : INTEGER; - Title : ARRAY 64 OF CHAR; - Sex : SexDesc; - END; - - -VAR - i : INTEGER; - employer : Person; - employee : ARRAY 2 OF Person; - - -PROCEDURE dumpPerson ( p : Person ); -BEGIN - Out.String("Meet "); Out.String(p.Name); - IF p.Sex = Male THEN Out.String(". He is ") END; - IF p.Sex = Female THEN Out.String(". She is ") END; - Out.Int(p.Age, 0); Out.String(" years old and a "); Out.String(p.Title); Out.Ln; -END dumpPerson; - - - -BEGIN - (* define people *) - employer.Name := "Bing"; employer.Age := 42; employer.Title := "CEO"; employer.Sex := Male; - - employee[0].Name := "Bob"; employee[0].Age := 26; - employee[0].Title := "SysAdmin"; employee[0].Sex := Male; - - employee[1].Name := "Alice" ; employee[1].Age := 22; - employee[1].Title := "Programmer"; employee[1].Sex := Female; - - (* print people *) - dumpPerson(employer); - FOR i := 0 TO LEN(employee) - 1 DO - dumpPerson(employee[i]); - END; -END record. diff --git a/examples/recursion/Fib.Mod.ob2 b/examples/recursion/Fib.Mod.ob2 deleted file mode 100644 index e5f5a27..0000000 --- a/examples/recursion/Fib.Mod.ob2 +++ /dev/null @@ -1,33 +0,0 @@ -MODULE fibonacci; - - -IMPORT Out, Modules; - - -VAR - n : LONGINT; - Arg0 : LONGINT; - - -PROCEDURE getFib (n : LONGINT) : LONGINT; - VAR result : LONGINT; -BEGIN - IF n = 0 THEN - result := 0 - ELSIF n = 1 THEN - result:= 1 - ELSE - result := getFib(n-1) + getFib(n-2) - END; - RETURN result -END getFib; - - -BEGIN - IF Modules.ArgCount # 2 THEN - Out.String("one argument needed"); Out.Ln; - HALT(1); - END; - Modules.GetIntArg(1, Arg0); - Out.Int(getFib(Arg0), 0); Out.Ln; -END fibonacci. diff --git a/examples/recursion/Gcd.Mod.ob2 b/examples/recursion/Gcd.Mod.ob2 deleted file mode 100644 index 2cc283d..0000000 --- a/examples/recursion/Gcd.Mod.ob2 +++ /dev/null @@ -1,31 +0,0 @@ -MODULE gcd; - - -IMPORT Out, Modules; - - -VAR - gcd : INTEGER; - arg0, arg1 : LONGINT; - - -PROCEDURE getGCD(a, b : INTEGER): INTEGER; -VAR ret : INTEGER; -BEGIN - IF a = 0 THEN ret := b; - ELSIF b = 0 THEN ret := a; - ELSIF b > a THEN ret := getGCD(b, a); - ELSE ret := getGCD(b, a MOD b) END; - RETURN ret; -END getGCD; - - -BEGIN - IF Modules.ArgCount # 3 THEN - Out.String("enter two integers to get GCD"); Out.Ln; - HALT(1) - END; - Modules.GetIntArg(1, arg0); Modules.GetIntArg(2, arg1); - gcd := getGCD(SHORT(arg0), SHORT(arg1)); - Out.Int(gcd, 0); Out.Ln; -END gcd. diff --git a/examples/value-types/Values.Mod.ob2 b/examples/value-types/Values.Mod.ob2 deleted file mode 100644 index b8b976b..0000000 --- a/examples/value-types/Values.Mod.ob2 +++ /dev/null @@ -1,12 +0,0 @@ -MODULE values; - - -IMPORT Out; - - -BEGIN - Out.String("Oberon has types, for example, I am a string type (ARRAY OF CHAR);"); Out.Ln; - Out.String("There are also other types, e.g. INTEGERs and BOOLEANs"); Out.Ln; - Out.Int(42, 0); - Out.Ln -END values. diff --git a/examples/variables/Variables.Mod.ob2 b/examples/variables/Variables.Mod.ob2 deleted file mode 100644 index 3630f19..0000000 --- a/examples/variables/Variables.Mod.ob2 +++ /dev/null @@ -1,31 +0,0 @@ -MODULE variables; - -IMPORT Out; - - -VAR - s : ARRAY 32 OF CHAR; - i : REAL; - n, m : INTEGER; - - -BEGIN - s := "Initial"; - Out.String(s); Out.Ln; - i := 3.14; - n := 64; - m := 42; - Out.Int(m, 0); Out.Ln; - Out.Int(n, 0); Out.Ln; - Out.Real(i, 0); Out.Ln; - - s := "assigning new values"; - Out.String(s); Out.Ln; - i := 2.71; - n := 128; - m := 84; - Out.Int(m, 0); Out.Ln; - Out.Int(n, 0); Out.Ln; - Out.Real(i, 0); - Out.Ln -END variables. diff --git a/examples/while/While.Mod.ob2 b/examples/while/While.Mod.ob2 deleted file mode 100644 index 30946f2..0000000 --- a/examples/while/While.Mod.ob2 +++ /dev/null @@ -1,17 +0,0 @@ -MODULE while; - -IMPORT Out; - - -VAR - i : INTEGER; - - -BEGIN - i := 0; - Out.String("WHILE loop started"); Out.Ln; - WHILE i < 10 DO - i := i + 1; - Out.Int(i, 0); Out.Ln; - END; -END while.