## Pascal

{{language|Pascal |strength=strong |safety=safe |express=explicit |checking=static |parampass=both |gc=no |LCT=yes |bnf=http://en.wikipedia.org/wiki/ISO_7185}} {{language programming paradigm|Imperative}} '''Pascal''' is an [[imperative programming|imperative]] computer programming language, developed in 1970 by [[wp:Niklaus Wirth|Niklaus Wirth]] as a language particularly suitable for [[wp:structured programming|structured programming]]. A derivative known as [[:Category:Object Pascal|Object Pascal]] was designed for [[object-oriented]] programming. Pascal can be used very easily in conjunction with fundamental [[wp:discrete mathematics|discrete mathematics]] as sets are built into the language.

There are actually several varieties of Pascal. The most important ones are:

- Standard Pascal ([[ISO]] 7185) is the original Pascal standard. However, there are many features missing from that language version, which has led to a wide variety of nonstandard extensions. On the other hand, there are features of Standard Pascal which are seldom implemented by Pascal compilers. A compiler which implements all features of Standard Pascal is [[GNU Pascal]].
- Extended Pascal (ISO 10206) is a later Pascal standard which adds a lot to the original Pascal standard. However, compilers implementing Extended Pascal are even more rare than those implementing Standard Pascal. GNU Pascal implements most of Extended Pascal as well.
- [[Turbo Pascal]] was a very successful Pascal implementation for [[DOS]] and 16 bit [[Windows]] (the latest version was sold under the name "Borland Pascal 7.0") and became the de-facto standard for Pascal on DOS. Even today many Pascal compilers provide compatibility to Turbo Pascal.
- [[Object Pascal]] is the Pascal dialect used in [[Delphi]], Borland's successor product to Turbo/Borland Pascal. It extends Pascal with a new object model (in addition to the object model introduced in Turbo Pascal 5.5). This language is also implemented by [[Free Pascal]] and [[Lazarus]].

==Grammar== The [[wp:ISO 7185|ISO 7185]] standard for Pascal uses [[wp:Extended Backusâ€“Naur Form|Extended Backusâ€“Naur Form]]. Also [[wp:Van Wijngaarden grammar|Van Wijngaarden's grammar]] can be used to define [[Pascal]]'s grammar[http://www-users.cs.york.ac.uk/~fisher/software/yoyovwg/exs/pascal.vwg]. ==See also==

- [[wp:Pascal (programming language)|Pascal on Wikipedia]]