Pascal (langage)
| Image manquante Langage_progr.png image:Langage_progr.png |
| Cet article fait partie de la série Langages de programmation |
| Langages à objets |
| Ada 95 - C++ - C# Common Lisp Delphi - Eiffel - Java Nice - Oz - Python Simula - Smalltalk Visual Basic |
| Langages impératifs |
| APL - ASP - Assembleur BASIC - C - COBOL Forth - FORTRAN - Logo Pascal - Perl - PHP |
| Langages fonctionnels |
| Erlang - Haskell ML/OCaml - Oz Lisp/Common Lisp Scheme |
| Langages déclaratifs |
| Clips - Oz - Prolog |
| Langages concurrents |
| Ada 95 - Erlang Java - Oz |
| Langages balisés |
| HTML - SGML - XML Dialectes XML S-expressions |
| Voir aussi |
| Conception - Codage Tests - Optimisations |
Le langage de programmation Pascal (dont le nom vient du mathématicien français Blaise Pascal) a été inventé par Niklaus Wirth dans les années 1970. Il a été conçu pour servir à l'enseignement de la programmation de manière rigoureuse mais simple, en réaction à la complexité de l'Algol 68. Ce langage est l'un de ceux qui ont servi à enseigner la programmation structurée. Le goto ou saut n'importe où dans le programme (dit « branchement ») est fortement déconseillé, le programme est un assemblage de procédures et de fonctions, dans lesquels on peut utiliser des blocs conditionnels (if, case...) et répétitifs (while, for, repeat...) ayant chacun une entrée et une sortie afin de faciliter les contrôles, ce qui aboutit à des mises au point bien plus rapides et bien plus systématiques.
Le langage est de plus fortement et statiquement typé, c'est-à-dire que toutes les variables doivent avoir un type défini au moment de la compilation. En revanche son manque de souplesse pour gérer les passages du type caractère au type chaînes de caractères est l'un de ses points faibles.
Il a largement pénétré le monde de l'éducation et de la recherche (universités), puis à une moindre mesure celui de l'industrie.
Le compilateur P4 a été diffusé en source dans les universités, à un prix très réduit. Il générait du P-Code, un code pour une machine virtuelle. Les programmes Pascal étaient donc facilement portables sur une machine. Il suffisait d'écrire pour elle un interpréteur de P-Code. Il y eut donc rapidement des portages sur 6502, 8080, Z80 et DEC PDP-11, les principaux microprocesseurs de l'époque.
Un compilateur eut beaucoup de succès, le UCSD Pascal (UCSD = Univerity of California at San Diego), notamment sur des machines comme l'Apple II qui furent très diffusées.
Mais le coup de « turbo » sera donné par la toute nouvelle société Borland, créée en 1983 qui commercialisa le compilateur Turbo Pascal pour un prix très modique (49 $ de l'époque alors que le compilateur Pascal Microsoft était à plus de 500 $, et ne possédait pas d'éditeur intégré, ni de compilation in core).
Le Turbo-Pascal
Le Turbo Pascal avait été écrit par Anders Hejlsberg (il s'appelait avant TP, Compass Pascal puis Poly Pascal). Très compact (12 K octets !) et très rapide car travaillant essentiellement en RAM, il compilait en une passe et produisait du code machine (x86 sous DOS) et non plus du P-Code. Il était livré avec un environnement complet (un éditeur de texte et une aide en ligne (innovation à l'époque) particulièrement compacte grâce à un système de substitution). Il fut constamment amélioré, en 1987, la version 4 apparaît avec un vrai EDI (Environnement de Développement Intégré), en 1989, la version 5.5 apporte l'objet, en 1990, la version 6 permet la programmation de fenêtres, les prémisses de l'évènementiel. Et puis 1993, la dernière version, la 7, pour DOS et pour Windows.
En 1995, pour contrecarrer Microsoft et la programmation visuelle du Visual Basic, Borland sort Delphi qui est, lui, un vrai compilateur qui produit du code machine. En 2001, il produira Kylix, l'équivalent de Delphi pour le monde Linux.
Ajoutons qu'il est l'ancêtre d'une grande famille de langages, dont les plus connus sont Modula-2 et Ada.
Un exemple de code : le fameux Hello world
program Bonjour;
begin
writeln('Hello world!');
end.
Compilateurs
- Dans le monde du libre, il existe un très bon compilateur, le Free Pascal (compatible avec le Pascal Objet de Borland) : http://www.freepascal.org. Un environnement de développement visuel, accompagné de bibliothèques LGPL, permet au Free Pascal d'émuler Delphi. Voyez lazarus.
- On peut citer aussi le GNU Pascal, dont la particularité est d'être écrit en C, c'est donc un compilateur qui ne se compile pas lui-même ce qui est devenu assez rare aujourd'hui.
- Borland propose maintenant gratuitement Turbo Pascal 5.5.
- Il est d'ailleurs possible de télécharger une version de Delphi et de Kylix, qui est utilisable gratuitement sous réserve de ne produire que des logiciels open-source; pour produire des logiciels payants, il faut s'acquitter d'une licence.
