Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
P#: a concurrent prolog for the .NET framework
Cook J. Software--Practice & Experience34 (9):815-845,2004.Type:Article
Date Reviewed: Aug 10 2005

The core of this work is the development of a translator from Prolog to C#, which enables code written in Prolog to make use of C#’s library and to interact with other aspects of Microsoft’s .NET platform.

The language developed, called P#, has standard Prolog as a subset, but the author has introduced a mechanism to enable threads executing Prolog code concurrently to communicate with each other. The primitives he introduces to do this seem rather crude, and not in keeping with the declarative aspects of Prolog. For example, one demonstration shows communication between threads that is achieved by a logic variable “pulsing” as one thread backtracks, causing the variable to mutate in value. In the author’s defense, standard Prolog is very much a sequential language, and the more successful attempts at parallelizing the logic programming paradigm have worked by breaking away from being “parallel Prologs.” If the prime motivation is to have a language that will work exactly as Prolog on straight Prolog code, it may be that concurrent extensions have to be of a “bolt on” nature, rather than integral to the logic programming model. It appears that P# also has additional features to those of Prolog, deriving from linear logic. Appropriate references are given, but there is no coverage of these in the paper.

In summary, the emphasis in this paper is on building a practical tool, which views Prolog in its operational terms rather than its logical terms.

Reviewer:  M. Huntbach Review #: CR131649 (0602-0172)
Bookmark and Share
  Reviewer Selected
 
 
Concurrent Prolog (D.3.2 ... )
 
 
C# (D.3.2 ... )
 
 
Microsoft .NET (D.3.2 ... )
 
 
Prolog (H.2.3 ... )
 
 
Prolog (I.2.5 ... )
 
 
Prolog (D.3.2 ... )
 
  more  
Would you recommend this review?
yes
no

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy