Bài báo tiên phong năm 2014 về SqueakJS, mô tả chi tiết việc triển khai Squeak/Smalltalk thuần túy bằng JavaScript, đã được trao giải thưởng Bài báo Đáng chú ý nhất bởi ACM SIGPLAN Dynamic Language Symposium (DLS). Sự ghi nhận này nhấn mạnh tầm ảnh hưởng lâu dài của công trình nghiên cứu do Vanessa Freudenberg, Dan Ingalls, Tim Felgentreff, Tobias Pape và Robert Hirschfeld thực hiện trong việc đưa các hệ thống ngôn ngữ động vào môi trường trình duyệt.
Tác động lịch sử và Phạm vi Giáo dục
SqueakJS đã chứng minh rằng các trình duyệt và JavaScript VM của chúng có thể hỗ trợ môi trường Smalltalk có tính tương tác và động cao. Việc triển khai này đặc biệt có giá trị trong bối cảnh giáo dục, nơi các hạn chế về việc cài đặt phần mềm thường giới hạn việc tiếp cận với các công cụ lập trình quan trọng như Etoys và các phiên bản đầu của Scratch. Bằng cách chạy hoàn toàn trên trình duyệt web, SqueakJS đã loại bỏ những rào cản này trong khi vẫn duy trì khả năng tương thích ngược với các ứng dụng Smalltalk hiện có.
Thành tựu Kỹ thuật và Cân nhắc về Hiệu suất
Dự án đã áp dụng cách tiếp cận đổi mới bằng cách triển khai phiên bản tương thích bit của Squeak/Smalltalk trên nền JavaScript. Mặc dù cách tiếp cận phân lớp này đã gây ra một số tranh luận trong cộng đồng, với các điểm chuẩn hiệu suất cho thấy nó chạy chậm hơn 100-200 lần so với trình thông dịch C gốc, nhưng tính đơn giản và khả năng tương thích với trình duyệt của việc triển khai đã chứng minh giá trị cho các trường hợp sử dụng cụ thể.
Việc chạy một hình ảnh Squeak không được sửa đổi trong trình duyệt bằng cách chỉ chuyển đổi VM là một điều thú vị, như một sự tò mò. Hơi giống như khởi động Linux trong trình duyệt.
Chỉ số hiệu năng:
- Chrome : Chậm hơn phiên bản gốc từ 2-3 bậc độ lớn
- Các trình duyệt khác: Chậm hơn trình thông dịch Squeak gốc từ 1-2 bậc độ lớn
- Triển khai: JavaScript thuần túy
- Tính năng chính: Triển khai tích hợp sẵn trên trình duyệt không cần plugin
Di sản và Sự liên quan hiện đại
Ngày nay, SqueakJS tiếp tục đóng vai trò quan trọng trong việc bảo tồn lịch sử máy tính và cho phép truy cập môi trường Smalltalk thông qua web. Mặc dù một số nhà phát triển bày tỏ lo ngại về sự đánh đổi hiệu suất của việc phân lớp ngôn ngữ động, thành công của dự án trong việc làm cho Smalltalk dễ tiếp cận thông qua trình duyệt đã ảnh hưởng đến những nỗ lực tương tự trong các triển khai ngôn ngữ khác.
Sự công nhận giải thưởng đến vào thời điểm thú vị trong lịch sử máy tính, khi sự căng thẳng giữa hiệu suất và khả năng tiếp cận tiếp tục định hình các lựa chọn phát triển. Mặc dù khả năng phần cứng hiện đại đã làm cho những triển khai như vậy khả thi, cuộc thảo luận về thiết kế hệ thống hiệu quả so với khả năng tương thích và tiếp cận vẫn còn liên quan đến bối cảnh phát triển phần mềm ngày nay.
Nguồn tham khảo: SqueakJS: A Modern and Practical Smalltalk That Runs in Any Browser