Game Development Reference
In-Depth Information
2.3.2 Procedural Programming: Imperative + Procedures
As programs were getting more complex, it became clear that a better way of or-
ganizing all of these instructions was necessary. In the procedural programming
paradigm , related instructions were grouped together in procedures (or methods ,
which is the more common modern name). Since a procedural programming lan-
guage still contains instructions, all procedural languages are also imperative.
The first real procedural language was Algol (a slightly strange abbreviation of
'Algorithmic Language'). This language was launched in 1960, together with an
official definition of the language, which was crucial for exchanging programs. Also
a special notation (the Backus Normal Form, or: BNF) was created that was used to
describe the structure of programs and which is still in use today. Near the end of
the 1960s, a new version of Algol came out, called Algol68 (guess in which year).
Algol68 contained a lot of new features, as opposed to the original Algol language.
In fact, it contained so many new things that it was very complicated to build good
translators for Algol68 programs. As a result, only a few of these translator programs
were built and it was game over for Algol68.
Clearly, simple programming languages were the way to go. The first simple, but
procedural language was conceived in 1971: Pascal (not an abbreviation this time,
but a reference to the French mathematician Blaise Pascal). Pascal was created by
Niklaus Wirth, a professor at the university of Zürich, with a main goal to provide
the students with an easy-to-learn programming language. Soon, this language was
also used for more serious applications.
For really big projects, Pascal was not very suitable though. An example of such a
big project was the development of the Unix operating system at the end of the 1970s
at Bell Labs. In any case, it was new to try to write an operating system in a pro-
cedural language, since this originally always was done in an Assembler language.
For developing Unix, a new language called C was defined (not an abbreviation ei-
ther, but the successor of earlier prototypes called A and B). The philosophy of Unix
was that everybody could write their own extensions to the operating system, and it
made sense to write these extensions in C as well. So, C became the most important
procedural language of the 1980s, also outside the Unix world.
C is still used quite a lot, although it is slowly making way for more modern
languages, especially in the game industry. Procedural programming languages in
general are still very popular. For example, many web applications use some kind of
procedural script language such as PHP, Ruby or Python. And a lot of games have
a scripting interface for loading levels, handling events that occur in the game, and
so on.
2.3.3 Object-Oriented Programming: Procedural + Objects
Procedural languages like C allow us to group instructions in procedures (also called
methods). This already made writing programs a lot easier. However, just like the re-
alization that instructions belonged together in groups, programmers saw that some
Search WWH ::




Custom Search