Re: [新闻] Pascal 语言设计者,尼克劳斯维尔特过世

楼主: Lordaeron (Terry)   2024-01-14 19:38:01
※ 引述《Lordaeron (Terry)》之铭言:
: → superpandal: free pascal也很久没更了 囧 01/06 22:31
: 推 oopFoo: 稳定更新少正常。C++一直变,我都不敢说我懂C++,像c++23 01/07 09:32
: → oopFoo: 拿掉GC,我才知道C++有GC的spec。 01/07 09:33
: 现存活着的Pascal 有
: 1. Delphi
: 换公司到embarcadero 后,活着!!但真的没啥进步。
: IDE 烂字不够形容,Compiler 就吃老本。
: VCL/FMX 没进步。
: BCB 是更惨,庶出,能活着就不错了。
: 2. FreePascal
: 这Compiler 是真的很3.2.2 很久了没错,但还是有一直在更版。
: 而Compiler 的跨平台也没话说,Write Once Compile Anywhere 有做到。
: IDE 好吧。Delphi7 的样子,Delphi7 的程度。
: LCL 的跨平台没话说。套LCL 的APPLICATION 跨Windows/Mac/Linux/BSD系列没问题。
: 3. GNU Pascal
: 这GPC....没在用。
: 按说法,GCC support 的平台它都Support。也可以吃GNU 的toolchain。
讲开FPC freepascal 和Delphi 了。
就讲一下台湾比较没人在提的LAZARUS 吧。用它来对应Delphi。
Lazarus 的GUI framework 叫LCL,对应到Delphi 的VCL和FMX。是的,一套对两套。
LCL 直接跨平台了,不用像Delphi 哪样,还有一个VCL 卡住。
Lazarus 的String 等于Delphi 的RawString。
Delphi 的String 是UTF-16,Lazarus 的元件是UTF-8,所以建议String 是UTF-8。
所以Lazarus 本身有做好的UTF-8的表,和相应的FUNCTION 来处理和UTF-8的事,
基本上是对照到Java 字串转换该有的都有了。
Microsoft 的extend 的CP932,CP936,CP949,CP950 表我也做上去了。
Delphi 开发和DB 相关的,基本上LAZARUS 都有。
但DBase DBF,Paradox DB 这两个基本上不要有任何的期待,特别是Big5。
其它的GUI 元件,则比VCL 的好。
另外LAZARUS 还有不少第三方的Component,可以从install/uninstall component 上
找到或从
https://wiki.freepascal.org/Projects_using_Lazarus_-_Components_and_Libraries
找到。
都没有,可以上github 上找。
其它的如CRYPT,NETWORK,都有。
第三方的GUI component 是没有Delphi 的做得漂亮的。
安装方面,除了
https://www.lazarus-ide.org/
外,我建议
https://github.com/LongDirtyAnimAlf/fpcupdeluxe/releases
fpcupdeluxe 可以让你客制化你的LAZARUS 包括cross compile,也只有这个才有
M1 MacOs 的Lazarus,M1 MacOs 原来的中文输入的问题,我也修正和调整好了。
在LAZARUS 3.0 中整进去了。
其它的平台Windows, Linux, BSD 等也有相应的调整。
所以,请用LAZARUS 3.0,但FPC 依旧是3.2.2。
最后,提醒一下,LAZARUS 和Delphi 一样,只有String 有GC。
其它的,请自行处理。同时,String 是thread unsafe 的。
作者: derecklin (derecklin)   2024-01-15 13:42:00
楼主: Lordaeron (Terry)   2024-01-15 16:41:00
欢迎入坑啊....

Links booklink

Contact Us: admin [ a t ] ucptt.com