Desarrollado por | Florian Klämpfl |
---|---|
Primera versión | 1997 |
Última versión | 3.2.0 (19 de junio de 2020) |
Depositar | svn.freepascal.org/svn/fpc/trunk |
Escrito en | Object Pascal , Pascal y ensamblador |
Sistema de explotación | GNU / Linux , Microsoft Windows , BSD ( d ) y macOS |
Medio ambiente | Multiplataforma |
Tipo | Compilador |
Licencias | GNU GPL |
Sitio web | www.freepascal.org |
Free Pascal (o Free Pascal Compiler o FPK ) es un compilador para el lenguaje Pascal , desarrollado como software libre .
El proyecto fue iniciado por Florian Klämpfl en 1992, bajo el nombre de FPK Pascal. La versión 0.9.1 se lanza enJunio de 1997. EnNoviembre de 1997, el proyecto se coloca bajo el sistema de gestión de versiones CVS . Ahora es mantenido por un equipo de desarrolladores. El cambio de nombre de FPK Pascal a Free Pascal tuvo lugar entre 1996 (FPK Pascal versión 0.6.5) y 1998 (Free Pascal versión 0.99.5). Free Pascal versión 1.0 fue lanzada enjulio 2000y la versión 2.0 en Mayo de 2005. La versión estable más reciente es Free Pascal 3.2.0.
Sus características más destacables son:
Tenga en cuenta que, si bien Free Pascal apunta a una alta compatibilidad, también presenta características que no son compatibles con Delphi, como la palabra clave bitpacked.
El genérico se define con las palabras clave genérico y especializado, mientras que en Delphi, estas palabras clave no se utilizan. Aquí un ejemplo :
escriba TList
genérico <T> = class
...
end;
TIntegerList = especializar TList <Integer>;
Es posible usar la sintaxis C para sumar, multiplicar, etc. :
function Somme(a,b: integer): integer; begin { calcul de la somme de a et de b } result := 0; result += a; result += b; end;Como la mayoría de los compiladores modernos, Free Pascal se puede integrar en un entorno de desarrollo integrado (IDE).
Lazarus es el IDE basado en Free Pascal más popular. Su objetivo es proporcionar a los programadores de Object-Pascal un entorno de desarrollo lo más cercano posible a Delphi. Se puede utilizar para crear aplicaciones gráficas o de consola.
Lazarus viene con un conjunto de componentes visuales y no visuales llamado Lazarus Component Library (LCL). Las aplicaciones de gráficos creadas con LCL se pueden migrar a otra plataforma mediante una simple recompilación (escribir una vez, compilar en todas partes).
MSEide es otro IDE basado en Free Pascal. MSEgui, como Lazarus LCL, es la biblioteca de software incluida con MSEide. Se comunica directamente con X11 a través de Xlib en Linux y gdi32 en Windows , y es compatible con la interfaz de múltiples documentos (MDI) y la herencia visual.