Triển khai hiệu quả hệ thống Smalltalk-80
L. Peter Deutsch Xerox PARC, Software Concepts Group
Allan M. Schiffman Fairchild Laboratory for Artificial Intelligence Research
TÓM TẮT
Ngôn ngữ lập trình Smalltalk-80* bao gồm cấp phát lưu trữ động, full upward funargs và các thủ tục đa hình toàn cục; hệ thống lập trình Smalltalk-80 có thực thi tương tác với biên dịch tăng dần và khả năng chuyển đổi triển khai. Những đặc điểm này của các hệ thống lập trình hiện đại thuộc số những đặc điểm khó triển khai hiệu quả nhất, ngay cả khi xét riêng lẻ. Một triển khai mới của hệ thống Smalltalk-80, được lưu trữ trên một máy tính dựa trên bộ vi xử lý nhỏ, đạt được hiệu năng cao trong khi vẫn duy trì khả năng tương thích hoàn toàn (mã đối tượng) với các triển khai hiện có. Bài báo này thảo luận về các kỹ thuật tối ưu hóa quan trọng nhất được phát triển trong quá trình của dự án, nhiều kỹ thuật trong số đó có thể áp dụng cho các ngôn ngữ khác. Ý tưởng then chốt là biểu diễn một số trạng thái thời gian chạy nhất định (cả mã và dữ liệu) dưới nhiều dạng, và chuyển đổi giữa các dạng khi cần thiết.
*Smalltalk-80 là một nhãn hiệu của Xerox Corporation.