Scheme

Scheme là một ngôn ngữ lập trình hỗ trợ nhiều khuôn mẫu lập trình (multi-paradigm), nhưng được biết đến nhiều nhất với khả năng hỗ trợ lập trình hàm.

Đây là một trong hai biến thể chính của Lisp, do Guy L. Steele và Gerald J. Sussman xây dựng vào những năm 1970.

Scheme
Scheme
Mẫu hìnhđa khuôn mẫu
Thiết kế bởiGuy L. Steele và
G. J. Sussman
Xuất hiện lần đầuthập niên 1970
Kiểm tra kiểumạnh, động
Trang mạngwww.scheme-reports.org
Các bản triển khai lớn
PLT Scheme,
MIT/GNU Scheme,
Scheme 48, Chicken, Gambit,
Guile, Bigloo,
Chez Scheme, STk,
STklos, Larceny,
SCM, Kawa
Ảnh hưởng từ
Lisp, ALGOL
Ảnh hưởng tới
Common Lisp, JavaScript,
Ruby, Dylan, Lua

Hiện nay phiên bản phổ biến của Scheme được phát triển theo chuẩn R5RS Scheme. Một phiên bản chính của nó là MzScheme.

Khác biệt Scheme

Scheme được thiết kế với mục đích gọn và rõ ràng hơn Lisp, thể hiện ở một số khác biệt sau:

  • Định nghĩa hàm bởi define thay vì defun
  • Các hằng số logic đúng và sai được viết là #t#f thay vì TNIL
  • Một số quy ước: các hàm predicate (trả lại giá trị đúng/sai) kết thúc bằng dấu chấm hỏi, chẳng hạn zero?, even?. Các hàm stateful (làm thay đổi giá trị của biến) kết thúc bằng dấu chấm than, chẳng hạn set!
  • Lược bỏ các hàm rườm rà, chẳng hạn nhóm các hàm caar, cddr, cadr...

Phiên bản hiện thực Scheme

Một phiên bản hiện thực khá nổi tiếng là PLT Scheme[1] Lưu trữ 2008-12-17 tại Wayback Machine. Bản này dựa trên nền của MzScheme nhưng tích hợp một môi trường phát triển thân thiện (DrScheme). Trong đó có chia sẵn các chủ đề lập trình (theme) khác nhau; chẳng hạn chủ đề đầy đủ với lập trình theo chuẩn R5RS Scheme, hay chủ đề dành cho sinh viên (chỉ có một số tính năng cơ bản nhất trong Scheme, nhưng dễ học hơn). Đặc biệt trong PLTScheme, các nguyên tố (atom) còn bao gồm cả dạng ảnh. Đặc điểm này giúp cho việc lập trình trở nên trực quan và lý thú.

R5RS Scheme

R5RS Scheme, hay Revised(5) Report on the Algorithmic Language Scheme—báo cáo chỉnh sửa (5) về ngôn ngữ lập trình Scheme, là tài liệu do nhiều tác giả viết, được Richard Kesley, William Clinger, và Jonathan Rees tập hợp (20 tháng 2 năm 1998). Tài liệu R5RS Scheme trình bày những đặc điểm trong ngôn ngữ lập trình Scheme.

Giáo dục Scheme

Scheme được dùng nhiều trong các trường học tại Hoa Kỳ. Tại MIT, Scheme được giảng dạy như môn học bắt buộc trong ngành điện toán, sử dụng giáo trình là cuốn Structure and Interpretation of Computer Programs (SICP) [2] Lưu trữ 2017-12-26 tại Wayback Machine.

Các phần mềm Scheme

Một số phần mềm ứng dụng được viết bằng Scheme, chẳng hạn:

Xem thêm

Tham khảo

Tags:

Khác biệt SchemePhiên bản hiện thực SchemeR5RS SchemeGiáo dục SchemeCác phần mềm SchemeScheme1970LispLập trình hàmNgôn ngữ lập trình

🔥 Trending searches on Wiki Tiếng Việt:

Danh sách thủy điện tại Việt NamMưa sao băngNguyễn Bỉnh KhiêmCần ThơDanh mục các dân tộc Việt NamTần Thủy HoàngTây NinhHải DươngCảm tình viên (phim truyền hình)SécChu Vĩnh KhangKinh tế ÚcNgày Thống nhấtDấu chấmThụy SĩNguyễn Thị ĐịnhBoku no PicoVladimir Vladimirovich PutinPhổ NghiAcetaldehydeBộ luật Hồng ĐứcTrà VinhẢ Rập Xê ÚtNguyễn DuSingaporeNhà ThanhCristiano RonaldoTổng cục Tình báo, Quân đội nhân dân Việt NamChiến dịch Mùa Xuân 1975Sân bay quốc tế Long ThànhKim Ji-won (diễn viên)Lịch sử Sài Gòn – Thành phố Hồ Chí MinhChữ Quốc ngữBảng tuần hoànQuân khu 9, Quân đội nhân dân Việt NamThái LanDanh sách quốc gia và vùng lãnh thổ châu ÁSao MộcĐại học Quốc gia Hà NộiTắt đènẤn ĐộBlue LockVườn quốc gia Cúc PhươngNgười ViệtHình bình hànhMalaysiaVũ Hồng VănVăn họcMa Kết (chiêm tinh)H'MôngÚcHà NộiChiến tranh Đông DươngTư tưởng Hồ Chí MinhCầu vồngChí PhèoPhạm TuyênMặt TrăngTừ mượn trong tiếng ViệtDương Văn MinhQuân khu 3, Quân đội nhân dân Việt NamB-52 trong Chiến tranh Việt NamĐội tuyển bóng đá trong nhà quốc gia Việt NamCác ngày lễ ở Việt NamNông Đức MạnhQuân đội nhân dân Việt NamAldehydeTrần Thái TôngNguyễn Khoa ĐiềmBảng chữ cái tiếng AnhThủ tướng Chính phủ nước Cộng hòa xã hội chủ nghĩa Việt NamSaigon PhantomBà Rịa – Vũng TàuTrần Đại QuangA.S. RomaVõ Văn Thưởng từ chức Chủ tịch nướcHentaiDanh sách trường trung học phổ thông tại Hà Nội🡆 More