While I do not know whether or not Watson actually does this, the paper doesn't mention anything about parallelism -- I suspect that the exploitation of structured parallelism is another handy benefit to using Prolog on as many machines as Watson was using.
There is so much ambiguity in language that parallelization is often possible at a very course-grained level. This usually doesn't require more cleverness than multi-processing or multi-threading.
Given that they switched from their own pattern matching language to an optimized WAM, I suspect they use one of the common Prolog implementations.
Nice article. I haven't been hired for Prolog work in a number of years, but I used to use the language a lot.
I liked the characterization of appropriate uses of Prolog: "excellent solution for the problem of pattern matching and all problems that involve a depth-first search and backtracking."
Prolog is awesome as a library, embedded in another "normal" language.
Prolog as a culture is amazing; the depth of it, specially when it's submerged in other disciplines, like constraint logic programming.
But, standalone, as a language, by itself: it either forces your problem into a text-book toy exercise, or drives you to frustration. It does all the difficult stuff out of the box, but you will need to cut through it with a machete to accomplish the mundane.
[+] [-] catechu|15 years ago|reply
(For example: http://lambda-the-ultimate.org/node/1867.)
[+] [-] microtonal|15 years ago|reply
Given that they switched from their own pattern matching language to an optimized WAM, I suspect they use one of the common Prolog implementations.
[+] [-] mark_l_watson|15 years ago|reply
I liked the characterization of appropriate uses of Prolog: "excellent solution for the problem of pattern matching and all problems that involve a depth-first search and backtracking."
[+] [-] steve19|15 years ago|reply
I have always longed to be paid to work in prolog since I was introduced to it in college.
[+] [-] JabavuAdams|15 years ago|reply
[+] [-] swannodette|15 years ago|reply
[+] [-] mahmud|15 years ago|reply
Prolog as a culture is amazing; the depth of it, specially when it's submerged in other disciplines, like constraint logic programming.
But, standalone, as a language, by itself: it either forces your problem into a text-book toy exercise, or drives you to frustration. It does all the difficult stuff out of the box, but you will need to cut through it with a machete to accomplish the mundane.
[+] [-] RandyHelzerman|15 years ago|reply
[deleted]