五年後 自版本3.0形成以來 以及2019年XNUMX月以新版本發布的職位公告, 最後 新版本 跨平台編譯器 免費Pascal 3.2.0。 新版本在Pascal語言的實現中增加了很大的創新和變化,目的是改善與Delphi的兼容性。
除此之外 包括常見的錯誤修復以及對新體系結構和系統的支持,AArch64,Linux,ppc64le,Android x86_64甚至是16位Windows。
關於免費帕斯卡
對於那些不知道的人,Free Pascal應該知道 是專業的32位,64位和16位Pascal編譯器。
它是由一群非常活躍的志願者開發人員在開放源代碼上開發超過XNUMX年的,它以其高穩定性,編譯速度和非常高效的產品代碼而聞名。
可以針對許多處理器架構:Intel x86(包括8086),AMD64,x86-64,PowerPC,PowerPC64,SPARC,ARM,AArch64,MIPS和Java虛擬機。
支持的操作系統包括 Linux,FreeBSD,Haiku,Mac OS X,iOS,iPhoneSimulator,Darwin,DOS(16和32位),Windows 32,Windows 64,WinCE,OS / 2,MorphOS,Nintendo GBA,Nintendo DS,Nintendo Wii,Android,AIX和AROS。 此外,開發版本中還提供了對Motorola 68k架構的支持。
除此之外 兼容 Borland Pascal 7,Delphi,Think Pascal和Metrowerks Pascal。 同時,基於Free Pascal編譯器並正在執行類似於Delphi的任務,正在開發Lazarus IDE。
Free Pascal 3.2的新功能是什麼?
由於編譯器3.0分支的開發歷時五年,因此強烈建議將此新版本用於將來的開發。 基於此編譯器(Lazarus,Code Typhon)的EDI很可能會迅速提供其集成。
而且,這個新版本最有趣的新穎之處是很多,例如 增加了初始化動態數組的能力 使用語法“ […]”。 以及 對通用功能,過程和方法的新支持 不受參數類型限制。
對標準(默認)模塊名稱空間的支持已發布。 添加 擋塊C 類似於Delphi«中的匿名方法。
還 強調了動態數組的擴展實現,添加了Insert()操作以將數組和元素添加到現有的動態數組中,以及Delete()刪除範圍和Concat()組合數組。
對於記錄類型,將實現Initialize,Finalize,Copy和AddRef運算符。
另外,不要忘記 還包括對新平台的支持 AArch64(ARM64),Linux,ppc64le,Android x86_64和i8086-win16已添加到編譯器。
還請記住默認名稱空間 添加了以下改進:
- 與動態數組相關的許多改進(插入,刪除,串聯,加法運算符,常量,聲明後立即初始化變量,構造函數)。
- $ MinEnumSize,$ PackSet和$ PackRecords的$ Push和$ Pop指令擴展。
- 在類和記錄聲明中的類threadvar節。
- 通用類型的增強和擴展,即使對於類外的例程也是如此。
- 新的操作員可以管理記錄類型(初始化,複製,AddRef,完成)。
- 對象接口的RTTI擴展和類型輔助。
- 新單位:rtl-generics(泛型),rtti(實驗性!),ProcessUnicode(TProcess的Unicode版本)。
- TRegistry類完全兼容Unicode。
- CHM軟件包已被重寫,以消除錯誤並提高性能。
最後, 如果您有興趣了解更多信息 關於此新版本,您可以查看更改的完整列表 在下面的鏈接中。
對於影響舊程序的更改,您可以從 以下鏈接。
排出
對於那些有興趣下載此編譯器新版本的人,可以通過以下鏈接進行下載,在該鏈接中可以找到每種受支持平台的編譯器的不同版本。
以殘酷的批評為代價,像圖斯卡(Pascal)被yuck,java ..取代的圖騰是一種恥辱。
+10我從來沒有找到創建Java的明智理由。 甚至不要質疑批評,您可以贊成還是反對,我們只需要隱瞞我們的意見即可。
我沒聽懂我與同事討論了30多年,C提供了Pascal無法提供的功能? 我什至不說Java
一切都是純粹的營銷方式,微軟30年前決定壟斷編譯器世界,並在VB和VC之間進行了猛烈的攻擊。 我什至不說Java。
Pascal具有可移植性,在50年前就發明了PVM(Pascal虛擬機)的概念,該概念由於性能原因而被放棄,現在JVM成為世界第八大奇蹟。 好吧,最後我談到了Java。