## Oberon by Examples [Oberon](https://en.wikipedia.org/wiki/Oberon_(programming_language)) is a general-purpose programming language created in 1986 by Niklaus Wirth and the latest member of the Wirthian family of ALGOL-like languages. [Oberon-2](https://en.wikipedia.org/wiki/Oberon-2) is an extension of the original Oberon programming language developed in 1991 at ETH Zurich by Niklaus Wirth and Hanspeter Mössenböck that adds limited reflection and object-oriented programming facilities, open arrays as pointer base types, read-only field export. Oberon By Example is a hands-on introduction to Oberon-2 using examples. This repository is under heavy modification to make it better for beginners. To start, make sure you have [Vishap Oberon Compiler](https://github.com/vishaps/voc) Check out the [hello-world](https://github.com/vishaps/oberonbyexample/tree/master/hello-world) example or browse the full list below. - [Hello World](https://github.com/vishaps/oberonbyexample/tree/master/hello-world) - [Types](https://github.com/vishaps/oberonbyexample/tree/master/value-types) - [Variables](https://github.com/vishaps/oberonbyexample/tree/master/variables) - [Constants](https://github.com/vishaps/oberonbyexample/tree/master/constants) - [For](https://github.com/vishaps/oberonbyexample/tree/master/for) - [While](https://github.com/vishaps/oberonbyexample/tree/master/while) - [If/Else](https://github.com/vishaps/oberonbyexample/tree/master/ifelse) - [Case](https://github.com/vishaps/oberonbyexample/tree/master/case) - [Arrays](https://github.com/vishaps/oberonbyexample/tree/master/arrays) - [Procedures](https://github.com/vishaps/oberonbyexample/tree/master/procedures) - [Procedure](https://github.com/vishaps/oberonbyexample/tree/master/procedures/procedure) - [Functions](https://github.com/vishaps/oberonbyexample/tree/master/procedures/function-procedure) - [VAR-Parameters](https://github.com/vishaps/oberonbyexample/tree/master/procedures/var-parameter) - TODO