2014-05-17 23 views
8

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

+2

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

+1

@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. –

+1

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

Trả lời

2

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

Các vấn đề liên quan