Download presentation
Presentation is loading. Please wait.
Published byDerick Norton Modified over 9 years ago
1
Oberon Oral Exam English
2
index The creator The history The use The syntax An example Conclusion
3
The creator - Niklaus Wirth Swiss computer scientist born February 1934 Academic history Electronics Engineering (ETH in Zürich) Master degree from Laval University, Canada Ph.D from University of California Berkeley
4
The creator - Niklaus Wirth Assistant professor Comp Science at Stanford University and University of Zürich Prof Informatics at ETH Zürich Chief designer of Algol W, Pascal, Modula, Modula-2, and Oberon
5
history ALGOL – 60’s Pascal – 70’s (first OO) Modula / Modula-2 –- 80’s (Modules) Oberon / Oberon-2 –- 80’s-90’s (OO)
6
The use Pascal’s syntax, style More power Very clear structure Object-Oriented 20 years experience Executable problem Used for teaching
7
The syntax - introduction Case sensitive Line end ; Comment (* *) MODULE Hello; (* first program *) IMPORT Out; PROCEDURE Do* BEGIN Out.String(“Hello”); Out.Ln; END Do; END Hello;
8
The syntax – Programme Structure MODULE Hello; (* first program *) IMPORT Out; PROCEDURE Do* BEGIN Out.String(“Hello”); Out.Ln; END Do; END Hello; MODULE PROCEDURE BEGIN END predefined words
9
The syntax – VAR & CONST Predefined section Marked by “VAR” Varname : TYPE; Assignment operator := constants in “CONST” section PROCEDURE Vartest* CONST numb = 6; VAR a : INTEGER; b : REAL; c : REAL; BEGIN a := 3; c := numb*a; Out.Real(c); Out.Ln; END Vartest;
10
The syntax - Datatypes BOOLEAN TRUE / FALSE CHAR ASCII SHORTINT -128...127 INTEGER -32768...32767 LONGINT -2E+9...2E+9 REAL -3,4E+38...3.4E+38
11
The syntax – Loops / Conditions WHILE WHILE (var1 < 3) DO var2 := var2 + 1; END; REPEAT var2 := var2 + 1; UNTIL (var1 < 3); LOOP var2 := var2 + 1; EXIT; END; IF IF (var1 = 3) THEN Out.String(“Hurray”); ELSE Out.String(“Booh”); END; CASE CASE var1 OF 1 : Out.String(“1”); | 2 : Out.String(“2”); | 3 : Out.String(“3”); ELSE Out.String(“none”); END;
15
Example – GFX engine Very powerful language Example : my GFX engine 5 months experience in Oberon No other programming background Many GFX possibilities
16
Example – GFX engine Dynamic 3D Object Rendered by Oberon Backface culling Z-buffer Shading
17
Example – GFX examples
18
Conclusion Structured, Compact, Powerful Many possible compilers Downside : Executable files Used for teaching
19
Thank you for your attention Any questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.