Докучающий Павлин Компилятор Паскаля


Команда Free Pascal выпустила версию 3.0 Бесплатного компилятора Pascal с поддержкой новых платформ, строк с поддержкой кодовых страниц и интегрированного репозитория исходных текстов Pascal.

Эта версия, получившая название “Надоедливый павлин” в процессе разработки, продолжает поддерживать менее популярные платформы, включая OS/2 (впервые поддержанную в Turbo Pascal двадцать три года назад) и MS-DOS на 8086, а также более широко используемые и современные операционные системы, включая новейшие Linux и iOS, работающие на AArch64.

Новые цели компилятора, поддерживаемые в этом выпуске, включают виртуальную машину Java и Davlik; AIX, 16-битный реальный режим MS-DOS, Android, armhf EABI и AROS.

Поддержка строк с поддержкой кодовых страниц означает, что каждая регистрация ans теперь включает дополнительную часть метаинформации, указывающую кодовую страницу, в которой закодированы символы этой строки. В более старых версиях Free Pascal библиотека времени выполнения была основана на библиотеках Turbo Pascal и Delphi 7, а в ее типах shortstring, ansistring и pchar отсутствовала какая-либо информация о кодировке. Предполагалось, что строки были закодированы в “системной кодировке по умолчанию” и передавались вызовам API ОС без какого-либо преобразования.

Когда Delphi 2009 был выпущен, Embarcadero переключил весь RTL на тип UnicodeString, который представляет строки с использованием UTF-16. Они также сделали тип AnsiString “с учетом кодовой страницы”, так что с тех пор AnsiStrings содержат кодовую страницу, в соответствии с которой их данные должны интерпретироваться. Поддержка этих типов строк теперь добавлена в Free Pascal.

Еще одним изменением является включение утилиты Pas2jni, которая генерирует мост JNI (собственный интерфейс Java) для кода Pascal. Это означает, что код на Паскале (включая классы и другие расширенные функции) можно легко использовать из программ на Java.

Работа над будущими версиями продолжается, по словам разработчиков, с поддержкой общих функций, дополнительным бэкендом генератора кода LLVM и полной поддержкой ISO и расширенного Pascal продвигается хорошо.


Добавить комментарий