Reputation: 1409
In the logic programming community, I have heard many people talk about "committed choice logic programming language", but I am not very clear about its definition. I searched the internet, but no formal answer was found (It seems related to concurrent logic programming?).
Does the "committed-choice logic programming language" just mean "pure logic programming language" plus some impure operators, e.g. !
, *->
, once
in Prolog?
Why is it called "committed-choice"?
Thanks.
Upvotes: 3
Views: 219
Reputation: 400
Committed-choice logic programming is an approach to concurrent logic programming. It partitions conjunctions of clauses on the right side of the unifier into guards and non-guards. Any particular clause can be explored concurrently, but once any of the guard clauses has been satisfied, only it continues, with the others cancelled.
https://en.wikipedia.org/wiki/Logic_programming -- see the section on concurrent logic programming.
Upvotes: 0