
"G. Wang" <visionsoft@hotmail.com> writes:
I'm interested. My first question would be, "what kinds of real problems can I solve better/more easily/more expressively with UBL than with approaches we already have available?" That's the test that
UBL allows you to write Prolog-like code directly inside C++. The current Prolog is modeled directly to the Prolog standard. So IMHO your question is equivalent to
"what kind of real problems can I solve better/more easily/more expressively with Prolog than with approaches we already have available in C++?"
Prolog is the preferred language in the field of AI, expert systems, business logics, etc. There are lots of discussions about why Prolog is better in those areas than traditional procedure-oriented or object-oriented languages. I don't think that I can cover the reasons in just a few paragraph.
It's not quite equivalent. You have to ask whether a _C++ Program_ would benefit enough from that paradigm to make it worthwhile to suffer the imperfect expression of it that you can achieve in a library. FC++ is modeled directly on Haskell, and I fully believe that there are real problems that one would choose to solve first in Haskell, but that didn't turn out to mean that a translation into C++ could provide compelling advantages to people already writing software in C++. Please take this question seriously. We all felt really badly about not accepting FC++ into Boost at the end of its formal review, which was a substantial emotional/time investment for its author. It was a really interesting library, but it seemed to fail a crucial utility/practicality test. I don't want something like that to happen to you. This post (http://article.gmane.org/gmane.comp.lib.boost.devel/109639) begins to give me some assurance, but it would be very helpful to hear more from you. -- Dave Abrahams Boost Consulting http://www.boost-consulting.com