Free Pascal – Wikipedia tiếng Việt

Free Pascal Compiler (FPC) là một trình biên dịch cho các ngôn ngữ lập trình có liên quan chặt chẽ, Pascal và Object Pascal. Nó là phần mềm tự do được phát hành theo Giấy phép Công cộng GNU, với các điều khoản ngoại lệ cho phép liên kết tĩnh với các thư viện thời gian chạy và các gói của nó cho bất kỳ mục đích nào kết hợp với bất kỳ giấy phép phần mềm nào khác.

Nó tương hỗ ngôn từ Object Pascal của riêng nó cũng như những ngôn từ của một số ít trình biên dịch mái ấm gia đình Pascal khác đến một mức độ nhất định, gồm có những trình biên dịch Turbo Pascal, Delphi, và 1 số ít trình biên dịch Macintosh lịch sử dân tộc. Ngôn ngữ được chọn trên cơ sở mỗi đơn vị chức năng ( mô-đun ) và hoàn toàn có thể sử dụng nhiều ngôn từ cho mỗi chương trình .

Free Pascal theo triết lý lập trình viết một lần, dịch bất kỳ đâu, và có sẵn cho nhiều kiến trúc CPU và hệ điều hành. Nó hỗ trợ hợp ngữ trên dòng lệnh và bao gồm một chương trình lắp ráp nội bộ có khả năng phân tích cú pháp một số phương ngữ theo phong cách AT&T, GAS và Intel.

Các dự án riêng biệt tồn tại để tạo thuận lợi cho việc phát triển ứng dụng giao diện người dùng đồ họa đa nền tảng (GUI),), một ứng dụng nổi bật nhất là môi trường phát triển tích hợp Lazarus (IDE).

Ngôn ngữ được tương hỗ[sửa|sửa mã nguồn]

Ban đầu, Free Pascal vận dụng ngôn từ chuẩn trong thực tiễn của những lập trình viên Pascal, Borland Pascal nhưng sau đó vận dụng bản Delphi. Từ phiên bản 2.0 trở đi, năng lực thích hợp Delphi 7 đã được nâng cao tiến hành hoặc nâng cấp cải tiến liên tục .Dự án có khái niệm chính sách biên dịch và những nhà tăng trưởng đã làm rõ rằng họ sẽ tích hợp những bản vá thao tác cho những phương ngữ chuẩn của Viện tiêu chuẩn vương quốc Hoa Kỳ ( ANSI ) và Tổ chức tiêu chuẩn hóa quốc tế ( ISO ), để tạo ra một chính sách tuân thủ tiêu chuẩn .Một nỗ lực nhỏ đã được triển khai để tương hỗ 1 số ít cú pháp Apple Pascal để thuận tiện tiếp xúc với Hệ quản lý Mac cổ xưa và macOS. Do phương ngữ của Apple thực thi một số ít tính năng Pascal tiêu chuẩn mà Turbo Pascal và Delphi bỏ lỡ, Free Pascal thích hợp với ISO nhiều hơn một chút ít .Phiên bản phát hành 2.2. x không biến hóa đáng kể tiềm năng phương ngữ vượt ra ngoài Delphi 7, thay vào đó chúng nhắm đến năng lực thích hợp gần hơn. Dự án vẫn còn thiếu tính năng Delphi của việc xuất khẩu tương hỗ trình biên dịch của những lớp từ những thư viện san sẻ, điều này rất có ích, ví dụ, so với Lazarus, triển khai những gói thành phần .

Tính đến năm 2011, một số tính năng cụ thể của Delphi 2006 đã được thêm vào trong nhánh phát triển và một số công việc bắt đầu cho các tính năng mới trong Delphi 2009 (đáng chú ý nhất là việc bổ sung kiểu UnicodeString ) đã được hoàn thành. Nhánh phát triển cũng có tính năng mở rộng Objective-Pascal cho giao tiếp Objective-C (Cocoa).

Kể từ phiên bản 2.7.1, Free Pascal đã thực thi chính sách ISO Pascal cơ bản, mặc dầu nhiều thứ như thủ tục Get và Put và khái niệm biến tập tin đệm để giải quyết và xử lý tệp vẫn không có .Kể từ phiên bản 3.0.0, chính sách ISO Pascal khá hoàn hảo, với một lỗi còn lại được sửa trong 3.1.1 sau đó. Nó đã hoàn toàn có thể biên dịch mã P5 của standardpascal.org mà không cần đổi khác gì .

Những năm đầu[sửa|sửa mã nguồn]

Free Pascal được tạo ra khi Borland nói rõ rằng việc tăng trưởng Borland Pascal cho DOS sẽ dừng lại với phiên bản 7, được thay thế sửa chữa bằng một mẫu sản phẩm chỉ có trên Windows, mà sau này trở thành Delphi .Sinh viên Florian Paul Klämpfl mở màn tăng trưởng trình biên dịch riêng của mình được viết bằng ngôn từ Turbo Pascal và đã tạo mã 32 – bit cho bộ lan rộng ra DOS GO32v1, được sử dụng và tăng trưởng bởi dự án Bất Động Sản Nền tảng lập trình GNU ( DJGPP ) của DJ vào thời gian đó .Ban đầu, trình biên dịch là một file thực thi DOS 16 bit được biên dịch bởi Turbo Pascal. Sau hai năm, trình biên dịch đã hoàn toàn có thể biên dịch chính nó và trở thành một trình thực thi 32 – bit .
Trình biên dịch 32 bit bắt đầu được xuất bản trên Internet, và những người góp phần tiên phong đã tham gia dự án Bất Động Sản. Sau này một bản chuyển sang Linux đã được Michael van Canneyt tạo ra, 5 năm trước khi trình biên dịch Borland Kylix được thông dụng .Chương trình quy đổi cho DOS đã được kiểm soát và điều chỉnh để sử dụng trong OS / 2 bằng cách sử dụng Eberhard Mattes eXtender ( EMX ) làm cho OS / 2 trở thành tiềm năng biên dịch được tương hỗ thứ hai. Cũng như Florian Klämpfl, tác giả khởi đầu, Daniël Mantione cũng góp phần đáng kể để thực thi điều này, cung ứng cổng gốc của thư viện thời hạn chạy cho OS / 2 và EMX. Trình biên dịch được cải tổ từ từ, và phiên bản DOS chuyển dời đến bộ lan rộng ra GO32v2. Điều này lên đến đỉnh điểm trong bản phát hành 0.99.5, được sử dụng thoáng rộng hơn nhiều so với những phiên bản trước và là bản phát hành sau cuối chỉ nhằm mục đích tuân thủ Turbo Pascal ; những bản phát hành sau này đã thêm chính sách thích hợp cho Delphi. Bản phát hành này cũng được chuyển đến những mạng lưới hệ thống sử dụng bộ giải quyết và xử lý mái ấm gia đình Motorola 68000 ( m68k ) .Với việc phát hành 0,99,8 tiềm năng Win32 đã được thêm vào, và khởi đầu được thực thi với việc tích hợp 1 số ít tính năng Delphi. Quá trình không thay đổi cho bản phát hành không phải beta đã mở màn và phiên bản 1.0 được phát hành vào tháng 7 năm 2000. Loạt phiên bản 1.0. x được sử dụng thoáng rộng, trong kinh doanh thương mại và giáo dục. Đối với phiên bản 1.0. x, phiên bản chuyển của 68 k CPU được làm lại và trình biên dịch tạo mã không thay đổi cho 1 số ít hệ điều hành quản lý giống như Unix và AmigaOS 68 k .

Phiên bản 2[sửa|sửa mã nguồn]

Trong quá trình ổn định những gì sẽ trở thành 1.0.x, và cũng khi chuyển sang các hệ thống Motorola 68k, rõ ràng là thiết kế của trình tạo mã là quá hạn chế về nhiều mặt. Các vấn đề chính là việc thêm bộ vi xử lý có nghĩa là viết lại bộ tạo mã và việc phân bổ đăng ký dựa trên nguyên tắc luôn giữ ba thanh ghi miễn phí giữa các khối xây dựng, không linh hoạt và khó bảo trì.

Vì những nguyên do này, chuỗi 1.1. x phân nhánh từ nhánh chính 1.0. x vào tháng 12 năm 1999. Lúc đầu, những đổi khác hầu hết là quét dọn và viết lại phong cách thiết kế lại cho tổng thể những phần của trình biên dịch. Trình tạo mã và trình cấp phép ĐK cũng được viết lại. Bất kỳ năng lực thích hợp còn thiếu nào của Delphi đã được thêm vào .Công việc trên 1.1. x liên tục chậm nhưng đều đặn. Vào cuối năm 2003, một phiên bản cho máy PowerPC đang hoạt động giải trí đã chuẩn bị sẵn sàng, tiếp theo là một phiên bản cho ARM vào mùa hè năm 2004, một phiên bản cho SPARC vào mùa thu năm 2004 và một phiên bản cho x86-64-AMD64 vào đầu năm 2004, làm cho trình biên dịch trở nên có sẵn cho một nền tảng 64 bit .Vào tháng 11 năm 2003, bản phát hành beta tiên phong của nhánh 1.1. x đã được đóng gói và đánh số 1.9.0. Chúng nhanh gọn được theo sau bởi những phiên bản 1.9.2 và 1.9.4 ; sau này ra mắt tương hỗ OS X. Công việc liên tục với phiên bản 1.9.6 ( tháng 1 năm 2005 ), 1.9.8 ( cuối tháng 2 năm 2005 ), 2.0.0 ( tháng 5 năm 2005 ), 2.0.2 ( tháng 12 năm 2005 ) và 2.0.4 ( tháng 8 năm 2006 ) .
Trong năm 2006, một số ít những việc làm chính được lên kế hoạch cho phiên bản 2.2, ví dụ điển hình như viết lại mạng lưới hệ thống đơn vị chức năng, vẫn chưa mở màn, và nó đã được quyết định hành động thay vì mở màn không thay đổi những tính năng đã được triển khai .Một số động cơ cho sự đổi khác lộ trình này là nhu yếu của dự án Bất Động Sản Lazarus, đặc biệt quan trọng là mối link nội bộ, tương hỗ cho Win64, Windows CE, và OS X trên x86 và những tính năng tương quan như DWARF. Sau phiên bản 2.1.2 và 2.1.4, phiên bản 2.2.0 được phát hành vào tháng 9 năm 2007, tiếp theo là phiên bản 2.2.2 vào tháng 8 năm 2008 và phiên bản 2.2.4 vào tháng 3 năm 2009 .Phiên bản2. 2. x đã cải tổ rất nhiều sự tương hỗ cho giao diện Mô hình đối tượng người tiêu dùng ActiveX và Thành phần ( COM ), và Object Linking and Embedding ( OLE ), mặc dầu những lỗi vẫn đang được tìm thấy. Phần chuyển giao giao diện sử dụng từ khóa implement đã được tiến hành một phần, nhưng không hoàn thành xong kịp vào tháng 3 năm 2011. [ 1 ] Hỗ trợ thư viện cho ActiveX cũng được cải tổ .Một tính năng chính khác là trình link nội bộ cho Win32, Win64 và Windows CE, giúp cải tổ link thời hạn và sử dụng bộ nhớ, và làm cho quy trình biên dịch-liên kết chạy nhanh hơn trong Lazarus. Hiệu quả cho việc vô hiệu link mưu trí, hoặc mã chết, cũng được cải tổ .Các tính năng mới nhỏ gồm có cải tổ DWARF ( 2/3 ) tương hỗ định dạng gỡ lỗi và tối ưu hóa như đệ quy đuôi, bỏ sót những khung ngăn xếp không thiết yếu và tối ưu hóa dựa trên vô hiệu phổ cập dựa trên ĐK ( CSE ). Việc thực thi tiên phong tương hỗ lập trình tổng quát cũng trở nên có sẵn, nhưng chỉ có tính thử nghiệm .
Loạt phát hành 2.4. x có bộ tiềm năng rõ ràng hơn so với những bản phát hành trước đó. Việc viết lại mạng lưới hệ thống đơn vị chức năng đã bị trì hoãn một lần nữa, và Trụ sở đã trở thành 2.4 đã được tạo ra để giữ những cam kết rủi ro đáng tiếc từ 2.2 để không thay đổi nó. Chủ yếu là những cam kết rủi ro đáng tiếc này có nhiều nâng cấp cải tiến tương quan đến những nền tảng mới, Mac PowerPC 64, Mac x86-64, và nhiều bản sửa lỗi cho kiến trúc ARM và x86-64 nói chung, cũng như DWARF .Các nâng cấp cải tiến khác của trình biên dịch gồm có tối ưu hóa hàng loạt chương trình ( WPO ) và tương hỗ ảo hóa và tương hỗ giao diện nhị phân nhúng ( EABI ) của ARM .Sau đó, trong chu kỳ luân hồi 2.2, việc tương hỗ tài nguyên giống như Delphi ( dựa trên những phần đặc biệt quan trọng trong tệp nhị phân thay vì dùng hằng số Pascal ) đã được thêm vào. Tính năng này, thiết yếu so với Lazarus, trở thành điểm nhấn chính của ứng dụng phiên bản nhánh này .Các phần bổ trợ nhỏ hơn khác là một trình quản trị bộ nhớ để cải tổ hiệu năng quản trị heap trong thiên nhiên và môi trường luồng, nâng cấp cải tiến nhỏ trong thích hợp Delphi như OleVariant và những nâng cấp cải tiến trong giao diện được ủy nhiệm .

Vào ngày 1 tháng 1 năm 2010, Free Pascal 2.4.0 đã được phát hành, tiếp theo vào ngày 13 tháng 11 năm 2010, bởi bản sửa lỗi sửa lỗi 2.4.2, với sự hỗ trợ cho các vòng lặp, vòng kín, các lớp trừu tượng và các thay đổi khác.[2]

Vào tháng 1 năm 2012, Free Pascal 2.6 đã được phát hành. Phiên bản tiên phong này từ loạt phát hành 2.6 cũng tương hỗ Objective Pascal trên OS X và những tiềm năng iOS và tiến hành nhiều nâng cấp cải tiến nhỏ và sửa lỗi. Vào tháng 2 năm 2013, FPC 2.6.2 đã được phát hành. Nó chứa phiên bản NetBSD và OpenBSD lần tiên phong kể từ 1.0.10, dựa trên những cổng mới. Vào tháng 3 năm năm trước, bản phát hành điểm ở đầu cuối trong loạt 2,6, 2.6.4, đã được phát hành, với hầu hết những bản update cơ sở tài liệu ( fcl-db ) .
Phiên bản 3.0.0 được phát hành vào ngày 25 tháng 11 năm năm ngoái và là bản phát hành chính tiên phong kể từ Januari 1, 2012. Nó chứa nhiều tính năng ngôn từ mới : Các tính năng mới của FPC 3.0

Các phiên bản sau đó[sửa|sửa mã nguồn]

Phiên bản 3.0.2 đã được phát hành vào ngày 15 tháng 2 năm 2017 và gồm có sửa lỗi và cập nhật trình biên dịch nhỏ. Phiên bản 3.0.4 đã được phát hành vào ngày 28 tháng 11 năm 2017. Nó gồm có nhiều nâng cấp cải tiến ngôn từ so với những phiên bản trước như trình link nội bộ cho Định dạng thực thi và link ( ELF ), Arm AARCH64 cho iOS và Linux, nền tảng i8086 đã được Phục hồi, thư viện lan rộng ra và nhiều hơn thế nữa .

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *