|
1
|
- Niklaus Wirth
- Oberon Day
- CERN, 10.3.2004
|
|
2
|
|
|
3
|
- Algol-like phrase structure (syntax)
- Generality of expressions
- Conditions and the type Boolean
- Procedures and functions, recursion
- The concept of locality (block structure)
- Data structures: Array, Record, Set, File, Pointer
|
|
4
|
|
|
5
|
- Pascal as basis
- Additional standard data types
- Modules, interfaces, information hiding, separate compilation
- Elements for parallel programming
|
|
6
|
|
|
7
|
|
|
8
|
- Modula-2 as basis
- Discarding several inessential features
- Adding type extensibility
(inheritance)
- Simplify syntax
|
|
9
|
|
|
10
|
- Economy of design
- Simpler to define and document
- Easier to learn and understand
- Less difficult to implement, more efficient compilation
- Fewer misunderstandings, more efficient programs
- Disciplined programming, fewer mistakes
|
|
11
|
- All together increases efficiency of program development, program
maintenance, and program execution.
- The more complex the task, the more perspicuous and reliable must be the
tools
- If problem is complex, do not add further, home-made complexity through
tools
- Can a simple language be powerful?
- Can flexibility be achieved without sacrificing efficiency (or vice
versa)?
|
|
12
|
- System engineers want to have close control over program and code
- No hidden mechanisms tolerated
- Oberon compiler generates “straight” code
- Predictable behavior, no surprises
- Ideal for light-weight systems with or without underlying “operating
system”
- Modules with separate compilation
|
|
13
|
- Oberon allows to program device drivers through its “low-level
features”, which are encapsulated within specific modules.
- Directs access to device interface registers.
- No overhead through crossing of module boundaries.
- Watertight type checking, also across module boundaries, at compile
time! Very fast loading and linking.
- Fast, dynamic loading of modules upon demand at run-time.
- Compiler was designed/ported for Strong-ARM within a month.
|
|
14
|
- Ñàìûé âåðíûé ïðèçíàê èñòèíû -- ýòî ïðîñòîòà è ÿñíîñòü. Ëîæü âñåãäà
áûâàåò ñëîæíà, âû÷óðíà è ìíîãîñëîâíà.
- Ëåâ Íèêîëàåâè÷ Òîëñòîé
- The most reliable sign of truth is simplicity and clarity. Lie is
invariably complicated, gaudy and verbose.
|