SabreTalk
SabreTalk là một nhánh của ngôn ngữ PL/I cho các máy chủ IMB S/360 chạy trên nền tảng TPF. SabreTalk được phát triển đồng thời bởi American Airlines, Eastern Air Lines và IBM. Chương trình SabreTalk hiện tại được áp dụng cho hệ thống điều phối bay của British Airways, mặc dù có một hệ thống thương mại có sẵn cho phép chuyển đổi chương trình SabreTalk sang ngôn ngữ lập trình C.
Hệ thống hỗ trợ hoạt động và đặt chỗ (OSS) của Delta Air Lines được phát triển để dùng SabreTalk và IBM 360 Assembler. Mặc dù sự phát triển hiện tại đang bị hạn chế ngôn ngữ C++, nền tảng lập trình chủ yếu của Delta vẫn là trong SabreTalk. Bởi vì đã có trình biên dịch từ SabreTalk sang C [1] và SabreTalk đã không còn nhận được sự hỗ trợ của các lập trình viên ban đầu cho nên một số công ty đã bỏ SabreTalk để chuyển sang dùng chương trình dựa nền ngôn ngữ C.
Đoạn code mẫu:
SAMPLE: PROCEDURE; DECLARE ARRAY(10) DECIMAL(5) BASED(POINTUR); DECLARE COUNTER BINARY(15) ALIGNED; DECLARE TOTAL BINARY(31) ALIGNED; START(POINTUR=#RG1); /* RECEIVE POINTER TO ARRAY IN REGISTER 1 */ TOTAL = 0; LOOP: DO COUNTER = 0 TO 10 BY 2; TOTAL = TOTAL + ARRAY(COUNTER); /* TALLY EVEN NUMBERED ITEMS */ END LOOP; IF TOTAL = 0 THEN /* VALUE OF TOTAL COMPUTED? */ ENTRC ERRO; /* N=CHECK VALIDITY IN PROG ERRO W/RETURN EXPECTED*/ BACKC(#RAC= TOTAL); /* BACK TO CALLING PROGRAM PASSING VALUE OF */ END SAMPLE; /* TOTAL IN REGISTER RAC. */
Xem thêm
[sửa | sửa mã nguồn]Tham khảo
[sửa | sửa mã nguồn]- ^ S. Dhinakar Jacob, Madhuchhanda Das, "TALK2C: A Tool for Automatic Migration," icpc, pp.288, 11th IEEE International Workshop on Program Comprehension (IWPC'03), 2003
Liên kết ngoài
[sửa | sửa mã nguồn]- Sabretalk Programmer's Reference Guide
- Moving From SabreTalk to "C" Lưu trữ 2012-03-26 tại Wayback Machine, by Jeff Robinson, March 2001, ACP/TPF Today