Free Pascal

compilateur pour le langage Pascal, développé en tant que logiciel libre
Free Pascal
Description de l'image FPClogogif.gif.
Description de l'image FPC Command Line.PNG.
Informations
Développé par Florian Klämpfl
Première version Voir et modifier les données sur Wikidata
Dernière version 3.2.2 ()[1]Voir et modifier les données sur Wikidata
Dépôt gitlab.com/freepascal.orgVoir et modifier les données sur Wikidata
Écrit en Object Pascal, Pascal et assembleurVoir et modifier les données sur Wikidata
Système d'exploitation GNU/Linux, Microsoft Windows, BSD et macOSVoir et modifier les données sur Wikidata
Environnement Multiplate-forme
Formats lus FreePascal compiled Unit (d)Voir et modifier les données sur Wikidata
Formats écrits FreePascal compiled Unit (d)Voir et modifier les données sur Wikidata
Type Compilateur
Licences GNU GPL
Site web www.freepascal.org

Free Pascal (ou Free Pascal Compiler ou FPC) est un compilateur pour le langage Pascal, développé en tant que logiciel libre.

Historique modifier

Le projet a été initié par Florian Klämpfl en 1992, sous le nom FPK Pascal. La version 0.9.1 est publiée en [2]. En , le projet est placé sous le système de gestion de version CVS[3]. Il est aujourd'hui maintenu par une équipe de développeurs[4]. Le changement de nom de FPK Pascal en Free Pascal a eu lieu entre 1996 (FPK Pascal version 0.6.5[5]) et 1998 (Free Pascal version 0.99.5[3]). La version 1.0 de Free Pascal a été distribuée en , et la version 2.0 en [6].

Caractéristiques modifier

Ses caractéristiques les plus notables sont :

À noter que si Free Pascal vise à une grande compatibilité, il introduit également des fonctionnalités qui ne sont pas prises en charge par Delphi, comme le mot-clef bitpacked[7].

Particularités modifier

La généricité est définie avec les mots-clés generic et specialize, alors que dans Delphi, ces mots-clés ne sont pas utilisés. Voici un exemple :

type
  generic TList<T> = class
    ...
  end;

  TIntegerList = specialize TList<Integer>;

Il est possible d'utiliser la syntaxe C pour ajouter, multiplier, etc. :

function Somme(a,b: integer): integer;
begin
  { calcul de la somme de a et de b }
  result := 0;
  result += a;
  result += b;
end;

Environnements de développement intégré (EDI) modifier

Comme la plupart des compilateurs modernes, Free Pascal peut être intégré à un environnement de développement intégré (EDI).

Lazarus modifier

Lazarus est le plus populaire des EDI basés sur Free Pascal. Son objectif est de fournir aux programmeurs Pascal Objet un environnement de développement s'approchant le plus possible de Delphi. Il peut être utilisé pour créer des applications en console ou graphiques.

Lazarus vient avec un jeu de composants visuels et non visuels nommé Lazarus Component Library (LCL). Les applications graphiques créées à l'aide de la LCL peuvent être portées vers une autre plate-forme par simple recompilation (écrire une fois, compiler partout).

MSEide modifier

MSEide est un autre EDI basé sur Free Pascal. MSEgui, tout comme la LCL de Lazarus, est la bibliothèque logicielle fournie avec MSEide. Il communique directement avec X11 via Xlib sous Linux, et gdi32 sous Windows, et supporte le multiple document interface (MDI) ainsi que l'héritage visuel.

Notes et références modifier

Voir aussi modifier

Liens externes modifier