Paper perintis tahun 2014 tentang SqueakJS, yang menjelaskan implementasi Squeak/Smalltalk dalam JavaScript murni, telah dianugerahi penghargaan Most Notable Paper oleh ACM SIGPLAN Dynamic Language Symposium (DLS). Pengakuan ini menyoroti dampak berkelanjutan dari karya Vanessa Freudenberg, Dan Ingalls, Tim Felgentreff, Tobias Pape, dan Robert Hirschfeld dalam membawa sistem bahasa dinamis ke lingkungan berbasis browser.
Dampak Historis dan Jangkauan Pendidikan
SqueakJS membuktikan bahwa browser dan JavaScript VM mereka dapat mendukung lingkungan Smalltalk yang sangat dinamis dan interaktif. Implementasi ini terbukti sangat berharga dalam konteks pendidikan, di mana pembatasan dalam menginstal perangkat lunak asli sering membatasi akses ke alat pemrograman penting seperti Etoys dan versi awal Scratch. Dengan berjalan sepenuhnya di browser web, SqueakJS menghilangkan hambatan ini sambil mempertahankan kompatibilitas dengan aplikasi Smalltalk yang sudah ada.
Pencapaian Teknis dan Pertimbangan Kinerja
Proyek ini mengambil pendekatan inovatif dengan mengimplementasikan versi Squeak/Smalltalk yang kompatibel bit di atas JavaScript. Meskipun pendekatan berlapis ini telah memicu beberapa perdebatan dalam komunitas, dengan tolok ukur kinerja menunjukkan bahwa implementasi ini berjalan 100-200 kali lebih lambat dibandingkan interpreter C asli, kesederhanaan dan kompatibilitas browser dari implementasi ini terbukti berharga untuk kasus penggunaan tertentu.
Menjalankan image Squeak tanpa modifikasi di browser hanya dengan memporting VM adalah hal yang menarik, sebagai suatu keingintahuan. Mirip seperti mem-boot Linux di browser.
Tolok Ukur Kinerja:
- Chrome : 2-3 kali lebih lambat dibandingkan dengan versi native
- Browser lainnya: 1-2 kali lebih lambat dibandingkan dengan Interpreter Squeak native
- Implementasi: JavaScript murni
- Fitur Utama: Implementasi berbasis browser tanpa memerlukan plugin tambahan
Warisan dan Relevansi Modern
Saat ini, SqueakJS terus memainkan peran penting dalam melestarikan sejarah komputasi dan memungkinkan akses berbasis web ke lingkungan Smalltalk. Sementara beberapa pengembang mengungkapkan kekhawatiran tentang trade-off kinerja dari pelapisan bahasa dinamis, keberhasilan proyek dalam membuat Smalltalk dapat diakses melalui browser telah mempengaruhi upaya serupa dalam implementasi bahasa lain.
Pengakuan penghargaan ini datang pada saat yang menarik dalam sejarah komputasi, di mana ketegangan antara kinerja dan aksesibilitas terus membentuk pilihan pengembangan. Meskipun kemampuan perangkat keras modern telah membuat implementasi seperti ini layak, diskusi berkelanjutan tentang desain sistem yang efisien versus kompatibilitas dan aksesibilitas tetap relevan dengan lanskap pengembangan perangkat lunak saat ini.
Sumber Kutipan: SqueakJS: A Modern and Practical Smalltalk That Runs in Any Browser