|Pestering Peacock Pascal Compiler|
|Written by Kay Ewbank|
|Tuesday, 12 January 2016|
The Free Pascal team has released version 3.0 of the Free Pascal Compiler with support for new platforms, codepage-aware strings, and an integrated Pascal source-repository.
This version, referred to as "Pestering Peacock" while under development, continues to support less popular platforms including OS/2 (first supported in Turbo Pascal twenty-three years ago), and MS-DOS on 8086, along with more widely used and modern operating systems including the latest Linux and iOS running on AArch64.
New compiler targets supported in this release include Java Virtual Machine and Davlik; AIX, 16-bit real mode MS-DOS, Android, armhf EABI, and AROS.
The support for codepage-aware strings means that every ansistring now includes an extra piece of meta-information that indicates the codepage in which the characters of that string are encoded. In older versions of Free Pascal, the runtime library was based on those of Turbo Pascal and Delphi 7, and its shortstring, ansistring and pchar types lacked any encoding information. The assumption was that strings were encoded in the "default system encoding" and were passed on to OS API calls without any conversion.
When Delphi 2009 was released, Embarcadero switched the entire RTL over to the UnicodeString type, which represents strings using UTF-16. They also made the AnsiString type "code page-aware", so that AnsiStrings from then on contain the code page according to which their data should be interpreted. Support for these string types has now been added to Free Pascal.
Another change is the inclusion of a Pas2jni utility that generates a JNI (Java Native Interface) bridge for Pascal code. This means Pascal code (including classes and other advanced features) can be easily used from Java programs.
Work on future versions continues, with support for generic functions, an optional LLVM code generator backend and full support for ISO and Extended Pascal progressing well, according to the developers.
or email your comment to: email@example.com
|Last Updated ( Tuesday, 12 January 2016 )|