# Virtual Pascal

Virtual Pascal ou VP est une implémentation freeware et orientée objet de compilateur pour le langage de programmation Pascal dans un environnement semi-graphique (un EDI). Développé initialement pour un environnement OS/2, il fut par la suite porté vers les environnements MS-DOS / Windows puis Linux.
Le développement du compilateur est suspendu depuis mai 2004 avec la version 2.1R279.

## Histoire

Virtual Pascal fut initialement développé, dans la première moitié des années 1990, par Vitaly Miryano, un informaticien ukrainien qui travaillait à l'Institut de cybernétique de Kiev, dans le but de proposer un portage à la fois en 32 bits et sous OS/2 des programmes pour Turbo Pascal, à un moment où Borland avait arrêté le développement de son logiciel (version 7 sortie en 1992) et où son successeur 32 bits, Delphi, n'était pas encore publié (sortie en 1995).
Contrairement à Delphi, qui est un RAD visuel, VP reprend l'environnement semi-graphique de Turbo Pascal 7, mais en 32 bits. Il s'agit donc bien d'un logiciel non-DOS qui garde cependant l'aspect d'un EDI pour DOS.
En 1995 Miryanov est recruté par la société britannique fPrint, il émigre à Londres où avec son nouvel employeur il continuera de développer son compilateur. La première version stable de VP, numérotée 1.1, pour OS/2 sort en 1996. En 1999 sort la version 2.0, cette fois implémentée pour OS/2 et MS-Windows.
Après le rachat de fPrint par la société Peregrine Systems, le développement du logiciel est arrêté par celle-ci, qui en cède gracieusement les droits au programmeur Allan Mertner. Dans la première moitié de la décennie 2000, celui-ci poursuit son développement selon un modèle de développement collaboratif. Il en résulte la réalisation de la version 2.1, implémentée cette fois pour Linux, en sus des deux autres plateformes. La dernière mise à jour publique, la version 2.1.279, est parue en mai 2004.

## Caractéristiques

Virtual Pascal est hautement compatible avec Turbo Pascal et Free Pascal (version 1.0), assez compatible avec Delphi 1.0 ; sa compatibilité est moindre avec les versions ultérieures de Delphi et Free Pascal. Comme presque tous les dialectes Pascal récents (postérieurs à Turbo-Pascal 5.5) non pédagogiques, VP inclut les caractéristiques suivantes :
* Programmation objet ;
* Programmation événementielle ;
* Reprise ou émulation des moteurs d'exécution de Borland et de la GNU Compiler Collection ;
* Programmation modulaire avec encapsulation de « units » ;
* Inclusion possible de segments de programmation assembleur ;
* Compilation 16-bits ou 32-bits, avec appels possibles à la Windows API.
* Environnement de développement intégré de type Turbo Vision.
L'interface est très semblable à celle de Turbo Pascal 5.5 et supérieur, et basée sur une adaptation de Turbo Vision construite à partir de la bibliothèque Visual Component Library. Elle intègre un débogueur de conception similaire au Turbo debugger. Elle permet une personnalisation très avancée, et est multi-fenêtres.
Comme pour Turbo Pascal et Free Pascal, on peut considérer que Virtual Pascal est un habillage « type Pascal » du langage C, spécialement du C++ dans sa version Borland : les bibliothèques de base, écrites en C++ ou en assembleur, sont communes aux deux langages, le compilateur Pascal est pour sa grande part une adaptation du compilateur C, enfin les ajouts non standards à ces dialectes Pascal (programmation objet et événementielle, segments en assembleur, programmation modulaire et unités) sont des adaptations de capacités natives ou préalablement ajoutées au Turbo C.