Tôi đang tìm kiếm tài liệu nghiên cứu hoặc bất kỳ ấn phẩm nào khác so sánh các máy trừu tượng khác nhau (nhiều hơn một) để thực hiện Prolog với trình thông dịch prolog không dựa trên các máy abstact. Những gì tôi đã thấy cho đến nay là phần lớn các triển khai có vẻ như dựa trên thông dịch viên prolog của họ trên Warren Abstract Machine mặc dù các máy trừu tượng khác đã được đề xuất (ví dụ: Vienna Abstract Machine, Tree-Oriented Abstract Machine) và không có bất kỳ sự so sánh chung nào. Tôi quan tâm đến việc so sánh hiệu quả (không phải là tính năng), mặc dù tất cả các phiên dịch so sánh sẽ cho phép lập trình logic ràng buộc.So sánh các máy trừu tượng để thực hiện Prolog
Trả lời
Bạn có thể xây dựng lập trình logic ràng buộc trên đỉnh của prolog nếu bạn giới thiệu một số nguyên thủy cho một kho lưu trữ hạn chế và một số nguyên thủy cho móc hợp nhất. Ví dụ:
SICStus Prolog: Biến Được phân phối
http://sicstus.sics.se/sicstus/docs/3.7.1/html/sicstus_17.html
Jekejeke Minlog: Little Solver
http://www.jekejeke.ch/idatab/doclet/prod/en/docs/15_min/10_docu/02_reference/04_examples/05_solver.html
http://www.jekejeke.ch/idatab/doclet/prod/en/docs/15_min/15_stdy/06_bench/10_examples/02_addensure/01_referensure.p.html
Tất nhiên bạn có thể xem nguyên thủy bổ sung theo hướng dẫn mới trong máy trừu tượng. Nhưng trong cả hai trường hợp trên các nguyên thủy là được thêm vào mức độ vị ngữ, để nó đặt ra câu hỏi liệu có thực sự là một nhu cầu cho một máy trừu tượng để hạn chế lập trình logic.
Tất nhiên bạn sẽ tìm thấy một vài gợi ý ràng buộc lập trình logic các máy trừu tượng cũng như thông qua google.
Bye
- 1. Thực hiện so sánh Java
- 2. Thực hiện Assert.AreMatch() để so sánh sâu các thuộc tính trong hai đối tượng
- 3. Thực hiện bộ so sánh giao diện
- 4. thực hiện chính xác các bộ so sánh xương sống
- 5. Cách đúng để thực hiện So sánh miền địa phương
- 6. API để so sánh AST?
- 7. Thực hiện tìm kiếm Prolog
- 8. Lớp học phải được khai báo trừu tượng hoặc thực hiện phương thức trừu tượng
- 9. Các loại chung so với lớp trừu tượng/Giao diện
- 10. Thực hiện quét sâu git để so sánh các tệp thực tế
- 11. Mở rộng so với thực hiện một lớp trừu tượng thuần túy trong nguyên cảo
- 12. Các khóa từ điển Python (so sánh các đối tượng lớp) với nhiều so sánh
- 13. Mẫu nhà máy trừu tượng
- 14. So sánh chuỗi và thực hiện chuỗi trong Java
- 15. lớp trừu tượng không thực hiện giao diện
- 16. sử dụng typeid để thực hiện một so sánh giữa các lớp thừa kế
- 17. viết C# thực hiện nội tuyến lớp trừu tượng?
- 18. trừu tượng thực hiện giao diện rõ ràng trong C#
- 19. Lớp mở rộng Thực hiện lớp trừu tượng Giao diện
- 20. Phát hiện đối tượng trong OpenCV và so sánh thời gian thực
- 21. So sánh hai đối tượng.
- 22. Làm thế nào để giải thích cây cú pháp trừu tượng của các hoạt động so sánh xích?
- 23. Cách hiệu quả để so sánh các đối tượng StringBuilder
- 24. So sánh: phương pháp giao diện so với phương pháp ảo so với phương pháp trừu tượng
- 25. Java lớp trừu tượng thực hiện giao diện
- 26. So sánh hai đối tượng
- 27. hiệu quả thực hiện Python so sánh mảng NumPy
- 28. So sánh hai IEnumerable để phát hiện các thay đổi
- 29. Các nhà máy trừu tượng có sử dụng "mới" không?
- 30. Thực hiện tìm kiếm thông minh/so sánh chuỗi mờ
Xem http://stackoverflow.com/questions/4478615/alternatives-to-the-wam/4504325 Nó không phải là rõ ràng những gì khác mà bạn có thể có nghĩa là bởi một sự so sánh. Những gì bạn có nghĩa là "thực hiện Prolog với Prolog phiên dịch không dựa trên máy trừu tượng" là không rõ ràng với tôi: Bất kỳ thực hiện được dựa trên một số máy trừu tượng. – false
@false, tôi có thể viết trình thông dịch Prolog sử dụng C++ và sau đó nó sẽ không dựa trên bất kỳ máy trừu tượng nào. Và bằng cách so sánh, tôi có nghĩa là để kiểm tra ví dụ như thế nào hiệu quả (về thời gian tính toán, bộ nhớ tiêu thụ) mỗi thông dịch viên hoạt động. –
Thậm chí sau đó bạn đang sử dụng một máy trừu tượng. Vẫn còn rất nhiều quyết định được đưa ra. Hãy suy nghĩ về backtracking/trailing. – false