VietTechiesHIỂU CÔNG NGHỆ. MỞ GÓC NHÌN.
☰ Chuyên mục

Vượt xa đầu in hình cầu: Ký hiệu của Kenneth Iverson đã trở thành ngôn ngữ tương tác như thế nào

07/10/2026 · VietTechies · Biên tập

Một tác phẩm điêu khắc hình học xuyên sáng gồm các ký hiệu toán học và mặt phẳng ma trận bằng thủy tinh mờ cùng acrylic màu hổ phách phát sáng trên bàn gỗ óc chó tối màu.
Ảnh minh họa do AI tạo.

Năm 1957, Giáo sư Kenneth E. Iverson tại Đại học Harvard sáng tạo ra một hệ thống ký hiệu toán học mới. Mục đích ban đầu của ông không phải để lập trình cho các máy tính lớn dùng linh kiện bán dẫn, mà nhằm giúp sinh viên dễ dàng tổng hợp và trao đổi về các thuật toán phức tạp. Các hệ thống máy tính thời đó phụ thuộc hoàn toàn vào thẻ đục lỗ và các lệnh máy dài dòng, trong khi hệ thống ký hiệu trên giấy của Iverson tập trung tối đa vào xử lý mảng và biểu diễn ma trận một cách ngắn gọn. Được thiết kế thuần túy để con người dễ đọc hiểu, ký hiệu này vận hành như một công cụ tư duy hoàn toàn độc lập với mã máy có thể thực thi.

Từ ký hiệu toán học trên giấy đến logic máy tính

IBM tuyển dụng Iverson vào năm 1960 để hợp tác cùng Adin Falkoff và một nhóm nhỏ nhằm hoàn thiện hệ ký hiệu thuật toán của ông. Trong suốt 5 năm, các ký hiệu này vẫn chỉ tồn tại dưới dạng công cụ ghi chép trên giấy cho con người phân tích chứ chưa phải là phần mềm. Sự chặt chẽ và tính mô tả chính xác của nó hiệu quả đến mức vào năm 1965, Falkoff, Iverson và Ed Sussenguth đã xuất bản một bài báo trên IBM Systems Journal, chính thức định nghĩa kiến trúc tập lệnh cho dòng máy tính lớn IBM System/360. Rất lâu trước khi có một trình biên dịch hay trình thông dịch có thể chạy được, hệ ký hiệu này đã đóng vai trò là bản thiết kế chuẩn mực cho một trong những kiến trúc máy tính ảnh hưởng nhất lịch sử.

Những mô hình thử nghiệm trên máy tính lớn

Bước chuyển mình từ trang in ra logic phần cứng bắt đầu vào năm 1965 khi Larry Breed và Philip Abrams viết một trình thông dịch theo lô bằng FORTRAN trên máy tính lớn IBM 7090. Ngay sau đó, Breed hợp tác với Roger Moore để xây dựng một mô hình thử nghiệm tương tác mang tên IVSYS trên dòng máy IBM 7093 đã qua chỉnh sửa, chạy hệ điều hành chia sẻ thời gian TSM. Hệ thống tồn tại ngắn ngủi này đã mang đến cho nhóm của Iverson cái nhìn thực tế đầu tiên về một hệ ký hiệu có thể thực thi trực tiếp. Đến mùa xuân năm 1966, Adin Falkoff đặt tên cho ngôn ngữ này là APL, viết tắt từ nhan đề cuốn sách xuất bản năm 1962 của Iverson là "A Programming Language", trong lúc cả nhóm chuẩn bị xây dựng một bản cài đặt chính thức và lâu dài.

Xây dựng công cụ tương tác cho System/360

Để đưa ngôn ngữ này đến tay người dùng, nhóm phát triển gồm Larry Breed, Dick Lathwell và Roger Moore đã bỏ qua hoàn toàn các hệ điều hành máy chủ sẵn có. Được viết trực tiếp bằng hợp ngữ System/360, APL\360 ra mắt nội bộ tại IBM vào tháng 11 năm 1966 và chính thức phát hành tới người dùng bên ngoài vào tháng 8 năm 1968 dưới dạng chương trình Loại III (Type III program). Bằng cách điều khiển trực tiếp phần cứng bên dưới, công cụ APL vận hành như một hệ điều hành chia sẻ thời gian và trình quản lý tệp hoàn chỉnh độc lập. Nó cung cấp các không gian làm việc hoạt động (active workspaces), khả năng hoán đổi bộ nhớ và các lệnh điều khiển không gian làm việc như )LOAD và )SAVE cho tối đa 50 người dùng đầu cuối cùng lúc.

Bàn phím, kỹ thuật đè phím và cú pháp khác biệt

Việc đưa ký hiệu toán học lên phần cứng đòi hỏi những cải tiến vật lý thực sự. IBM đã sản xuất các đầu in hình cầu (type ball) tùy chỉnh cho các máy đầu cuối 1050 và 2741 dựa trên cơ chế máy đánh chữ Selectric để in các ký hiệu toán học đặc biệt. Vì không gian trên bàn phím có hạn, người dùng phải tạo ra các ký hiệu phức tạp bằng cách gõ đè các ký tự lên nhau—chẳng hạn như gõ ký tự delta, lùi lại một khoảng, rồi gõ thêm một vạch đứng để tạo ra ký hiệu sắp xếp tăng dần ⍋. Về mặt cú pháp, các biểu thức được tính toán nghiêm ngặt từ phải sang trái mà không tuân theo thứ tự ưu tiên toán tử truyền thống; do đó gõ 2×4+3 sẽ cho ra kết quả 14, trong khi các toán tử rút gọn như +/ giúp loại bỏ hoàn toàn nhu cầu dùng các vòng lặp tường minh.

Nhờ chuyển đổi đại số ma trận thành một môi trường tương tác tức thì, APL đã giới thiệu thế hệ lập trình viên thời thẻ đục lỗ đến với việc thực thi thuật toán trực tiếp theo thời gian thực. Dựa trên các máy đầu cuối phần cứng tùy biến và công cụ chia sẻ thời gian ở cấp hợp ngữ, dự án đã chứng minh rằng các thao tác toán học cấp cao có thể chạy tương tác trên các máy tính lớn dùng chung, làm thay đổi căn bản cách con người tương tác với máy móc tính toán.

Ảnh minh họa do AI tạo, không phải ảnh tư liệu.

Nguồn: The APL Programming Language Source Code