Khái Quát Sơ Lược về Pascal(phần II) Chuẩn hóa Ngôn ngữ này được chuẩn hóa vào năm 1983 trong chuẩn ISO/IEC 7185, một vài chuẩn quốc gia cụ thể cũng được đưa ra bao gồm cả chuẩn ANSI/IEEE770X3.97-1983 của Mỹ. Năm 1990 chuẩn Pascal mở rộng được đưa ra với tên gọi ISO/IEC 10206. Chuẩn ISO 7185 được phát triển với mục đích là sự chọn lọc của ngôn ngữ 1974 của Writh, được đề cập chi tiết trong cuốn "Hướng dẫn sử dụng và Báo cáo của Jensen và Wirth", bổ sung đáng kể nhất là "Các tham số mảng phù hợp" được coi là mức 1 của tiêu chuẩn, mức 0 là Pascal không có mảng phù hợp. Trên các máy tính lớn mà Pascal xuất phát (mainframe và minicomputer), các tiêu chuẩn này thường được tuân theo. Tuy vậy trên IBM-PC thì ngược lại. Trên các máy tính IBM-PC, chuẩn của Turbo Pascal và Delphi của của Borland có lượng người dùng nhiều nhất. Do vậy, biết liệu một phiên bản riêng biệt tương ứng với ngôn ngữ Pascal ban đầu, hay ngôn ngữ riêng của Borland là khá quan trọng. Các trình biên dịch phổ biến Có vài trình biên dịch Pascal được đưa ra cho sử dụng công khai: Trình biên dịch P4, cơ sở cho rất nhiều trình biên dịch Pascal- được-viết-bằng-Pascal sau đó, bao gồm cả UCSD p-System. Free Pascal được viết bằng Pascal (sao cho nó có thể biên dịch được chính nó), được phát triển với mục tiêu là cung cấp một trình biên dịch mạnh mẽ và thuận tiện, có khả năng biên dịch cả các ứng dụng cũ lẫn phát triển ứng dụng mới. Được phân phối miễn phí dưới giấy phép GNU. Có khả năng trộn lẫn cả mã của Turbo Pascal và mã Delphi, hỗ trợ nhiều nền tảng lẫn nhiều hệ điều hành. Turbo Pascal là trình biên dịch Pascal thống trị cho PC vào thập niên 1980 và đầu thập niên 1990. Nó phổ biến vì các mở rộng mạnh mẽ và đặc biệt là thời gian biên dịch cực kì ngắn. Trong thời điểm hiện tại, các phiên bản cũ của Turbo Pascal (tới 5.5) có thể tải xuống miễn phí tại trang web của Borland (tuy nhiên vẫn cần phải đăng ký). Chrome là thế hệ Object Pascal tiếp theo cho nền tảng .NET và nền tảng Mono, được RemObjects Software cung cấp. GNU Pascal Compiler (GPC) là trình biên dịch Pascal của Bộ biên dịch GNU (GCC). Trình biên dịch này được viết bằng C, thư viện chạy hầu hết viết bằng Pascal. Được phân phối miễn phí dưới giấy phép GNU, có thể chạy trên rất nhiều nền tảng và hệ điều hành khác nhau. Nó còn hỗ trợ chuẩn ngôn ngữ ANSI/ISO và tương thích với ngôn ngữ Borland/Turbo Pascal. Việc hỗ trợ cho Borland Delphi và một vài biến thể khác vẫn còn khá hạn chế. Delphi là sản phẩm RAD (Rapid Application Development-phát triển ứng dụng tức thời) của Borland. Nó sử dụng Delphi, tiền thân từ Pascal, để tạo các chương trình ứng dụng cho nền Windows. Phiên bản mới nhất còn hỗ trợ cả việc biên dịch cho nền Microsoft .NET. Kylix là một nhánh sản phẩm khác kế thừa từ Pascal của Borland, tiền thân từ Delphi, hỗ trợ hệ điều hành Linux và một thư viện đối tượng đã được bổ sung. Trình biên dịch và môi trường phát triển (IDE) có thể được cung cấp cho việc sử dụng phi lợi nhuận. Trình biên dịch (không bao gồm thư viện hay IDE) được cho là trở thành phần mềm Mã nguồn mở trong thời gian tới. Dr. Pascal là một trình thông dịch chạy Standard Pascal. Bổ sung đáng kể nhất là chế độ "thực thi nhìn thấy được" cho phép hiển thị chương trình đang chạy cùng với các biến của nó, và cả quá trình kiểm tra lỗi khi thực thi (runtime error checking). Trình thông dịch này không tạo ra được file thực thi nhị phân riêng rẽ, chạy trên nền MS-DOS, hoặc cửa sổ DOS trong nền Windows, và cả trên dòng máy Macintosh cũ. Virtual Pascal được Vitaly Miryanov sáng tạo như một trình biên dịch dành cho OS/2 tương thích với cú pháp của Borland Pascal. Sau đó nó được fPrint phát triển thành sản phẩm thương mại, hỗ trợ thêm Win32, và đến năm 2000 trở thành phần mềm miễn phí. Ngày nay nó có thể biên dịch cho Win32, OS/2 và cả Linux, và gần như hoàn toàn tương thích với Borland Pascal và Delphi. IP Pascal ban đầu là ngôn ngữ Pascal dành cho Z80/CP/M, rồi được chuyển sang và viết lại cho Intel 80386/PC. IP Pascal có một thư viện khả chuyển (portability library). Ví dụ, một chương trình hiển thị văn bản viết bằng Pascal chuẩn từ thập niên 1970 có thể được biên dịch lại để làm việc trong một cửa sổ và thậm chí có cả việc tạo dựng đồ họa. IP Pascal hỗ trợ chuẩn ISO 7185 và nâng cấp ngôn ngữ một cách logic. Ví dụ, Pascal chuẩn hỗ trợ các xâu ký tự được "căn lề phải" và sau đó còn hỗ trợ xâu ký tự động. Mảng tĩnh của Pascal chuẩn được nâng thành mảng động nhưng vẫn hoàn toàn tương thích ngược với mảng tĩnh, v.v. Pocket Studio là một tập nhỏ các trình biên dịch Pascal và RAD hướng tới Palm/MC68xxx với một số mở rộng hỗ trợ giao tiếp với API (Application Programming Interface-giao tiếp lập trình ứng dụng) của hệ điều hành Palm OS. Lazarus là môi trường phát triển tức thời trực quan đa nền tảng. Lazarus sử dụng trình biên dịch Free Pascal. Bạn có thể tìm thấy một danh sách lớn nữa tại Pascaland. Trang web này viết bằng tiếng Pháp, nhưng về cơ bản chỉ là một danh sách gồm các địa chỉ mạng (URL) tới các trình biên dịch, do vậy không ảnh hưởng nhiều. Bạn cũng có thể ghé thăm Pascal Central, một trang web chính về thông tin và hỗ trợ cho Pascal dành cho máy Mac, với rất nhiều bộ sưu tập về các bài báo, cộng với liên kết tới rất nhiều trình biên dịch và hướng dẫn khác. [sửa] Những phê phán trước đây Mặc dù rất phổ biến (những năm 1980 và 1990 còn phổ biến hơn cả thời điểm bài viết này được thực hiện), các phiên bản Pascal trước đây đã bị phê phán rộng rãi vì không phù hợp cho việc sử dụng trong thực tế, ngoài việc dạy học. Brian Kernighan, người truyền bá C, đã đưa ra những phê phán lớn nhất về Pascal trong đầu những năm 1980, bằng tác phẩm Why Pascal Is Not My Favorite Programming Language (Tại sao Pascal không phải là ngôn ngữ lập trình tôi ưa thích). Mặt khác, rất nhiều nỗ lực phát triển lớn trong những năm 1980 (như chuyển sang cho Apple Lisa và Macintosh) lại phụ thuộc rất nhiều vào Pascal (tới mức mà giao tiếp C dành cho Mac OS phải giải quyết cả các kiểu dữ liệu của Pascal). Trong những thập niên sau đó, Pascal tiếp tục phát triển, và những vấn đề mà Kernighan đã đưa ra không còn phù hợp cho các phiên bản hiện tại nữa. Thật đáng tiếc là, như những điều mà Kernighan dự đoán trong bài viết, hầu hết các sự mở rộng để giải quyết các vấn đề trên làm các trình biên dịch không tương thích với nhau. Mặc dù vậy, trong thập niên vừa qua các biến thể dường như đã tập trung lại thành hai loại, theo chuẩn ISO hay theo chuẩn Borland, đều đã dần dần đi ra ngoài dự đoán của Kernighan. Dựa trên kinh nghiệm với Pascal, Niklaus Wirth đã phát triển thêm hai ngôn ngữ lập trình nữa, Modula-2 và Oberon. Hai ngôn ngữ này mặc dù đã có nhiều cải tiến nhưng không thể theo kịp thành công thương mại của Pascal. . Khái Quát Sơ Lược về Pascal(phần II) Chuẩn hóa Ngôn ngữ này được chuẩn hóa vào năm 1983 trong chuẩn ISO/IEC. Pháp, nhưng về cơ bản chỉ là một danh sách gồm các địa chỉ mạng (URL) tới các trình biên dịch, do vậy không ảnh hưởng nhiều. Bạn cũng có thể ghé thăm Pascal Central, một trang web chính về thông. một trang web chính về thông tin và hỗ trợ cho Pascal dành cho máy Mac, với rất nhiều bộ sưu tập về các bài báo, cộng với liên kết tới rất nhiều trình biên dịch và hướng dẫn khác. [sửa] Những