Câu hỏi là một câu hỏi khó trả lời, vì ai đó sẽ phải biết tất cả các ngôn ngữ để biết rằng không có ngôn ngữ nào khác có sẵn trong Lisp, vì vậy những điều sau đây dựa trên các ngôn ngữ tôi có kinh nghiệm.
Ngoài đỉnh đầu, điều kiện là thứ mà tôi chưa từng thấy trong bất kỳ ngôn ngữ nào khác. Hãy suy nghĩ 'ngoại lệ', nhưng nơi ngăn xếp cuộc gọi không phải là không có, và nơi người gọi có thể gửi giá trị khôi phục đến trang web ngoại lệ, nhưng không làm phiền ngăn xếp cuộc gọi ở giữa trình xử lý và nguồn của ngoại lệ. Công bằng mà nói, đây thực sự chỉ là một ứng dụng đặc biệt của các phần tiếp theo, vì vậy Ruby và Scheme (ít nhất) có thể làm điều này.
Hệ thống vĩ mô của Lisp được hưởng lợi từ tính đều đặn / đồng âm, nhưng Scala đang có kế hoạch kết hợp chúng như một tính năng ổn định trong 2.12 và Mẫu Haskell yêu cầu các tính năng tương tự. Tôi tranh luận rằng chúng sẽ phức tạp hơn về mặt cú pháp so với Lisp, nhưng việc tạo mã thời gian biên dịch là không có vấn đề gì.
Tuy nhiên, hãy nghĩ về nó, việc xây dựng các biểu mẫu thẳng chỉ là một loại macro có sẵn trong Lisp: Tôi chưa thấy một trình biên dịch hoặc trình đọc macro tương đương ở bất kỳ nơi nào khác.
Khả năng của một số phương ngữ (ví dụ SBCL ) để lưu một hình ảnh quá trình hoàn chỉnh, có thể tiếp tục là tuyệt vời, nhưng một lần nữa nó không phải là duy nhất: Smalltalk đã làm điều đó trong nhiều thập kỷ.
Nhiều ngôn ngữ khác cho phép hủy bỏ việc gán khi trả về mảng, nhưng cách tiếp cận giá trị # 'và #' nhiều giá trị / ràng buộc / giá trị dường như vẫn đặc trưng cho Common Lisp và Scheme (vẫn có thể phá hủy 'thường xuyên' ). 'Wantarray' của Perl cho phép một hàm xác định xem nó được gọi trong vô hướng, liệt kê hoặc bỏ ngữ cảnh để nó có thể điều chỉnh giá trị trả về của nó theo cách tương tự (-ish), nhưng tôi không thấy nhiều giá trị trả về 'đúng' bên ngoài của Đề án / CL.
Về các tính năng ngôn ngữ, có lẽ không nhiều điều mà Lisp có thể làm mà các ngôn ngữ khác không thể (Turing hoàn toàn là chính nó). Nó những gì là , tuy nhiên, là một ngôn ngữ nơi mã được thể hiện về mặt cấu trúc dữ liệu riêng của mình, làm cho Big Idea ™ -đó code được dữ liệu một cái gì đó tương đối dễ dàng để làm việc với.