Tin tức

smolts: Một IDE Sư Phạm Làm Cho Ngữ Nghĩa Ngôn Ngữ Trở Nên Hữu Hình

smolts là một IDE dựa trên trình duyệt để dạy ngôn ngữ lập trình, bước qua các chương trình SMoL dạng S-expression với các chế độ xem trực tiếp về continuation, môi trường và bộ lưu trữ.

September 9, 2026· 2 min read
smolts: Một IDE Sư Phạm Làm Cho Ngữ Nghĩa Ngôn Ngữ Trở Nên Hữu Hình

Hai năm thực hiện, smolts là một IDE sư phạm cho một ngôn ngữ giảng dạy dựa trên công trình SMoL (Standard Model of Languages) của Shriram Krishnamurthi từ PLAI. Nó được lấy cảm hứng từ Stacker, một công cụ tương tự của Kuang-Chen Lu và Krishnamurthi. Tác giả xây dựng nó để giảng dạy nhưng chưa sử dụng nó trong lớp học—tuy vậy, nó đáng để xem.

IDE chạy trong trình duyệt và cho phép bạn viết chương trình bằng phương ngữ S-expression của SMoL, sau đó bước qua quá trình thực thi. Điều làm nó khác biệt: nó hiển thị continuation, môi trường và bộ lưu trữ hiện tại khi chương trình chạy, và chú thích trực tiếp mã nguồn trong trình soạn thảo để hiển thị giá trị biến và biểu thức. Bạn có thể bước lùi nếu bỏ lỡ một chi tiết, và có tính năng 'chạy đến con trỏ'.

Tác giả thừa nhận việc triển khai còn lỗi và chưa hoàn thiện, với một số lỗi quản lý trạng thái Svelte. Nhưng ý tưởng cốt lõi—làm cho ngữ nghĩa ngôn ngữ trở nên hữu hình—là vững chắc. Cũng có một khái niệm quản lý dự án dựa trên git trong trình duyệt gợi mở, dù chưa được hiện thực hóa đầy đủ.

Đối với các nhà giáo dục và những người đam mê PL, đây là một cách thực hành để cho sinh viên thấy điều gì thực sự xảy ra bên dưới. Các chế độ xem continuation và môi trường trực tiếp là loại công cụ tạo ra những khoảnh khắc 'aha'. Nó còn thô, nhưng tiềm năng rõ ràng.

Hãy thử tại smol.leastfixedpoint.com hoặc khám phá mã nguồn.

IDE hiển thị cho bạn một bản trình bày về continuation, môi trường và bộ lưu trữ hiện tại khi chương trình thực thi—làm cho cỗ máy vô hình của ngữ nghĩa ngôn ngữ trở nên hữu hình.
Ban biên tập Manul X