Alex Gian wrote:

Hi Filip

Well, I read Ch.12 of the tutorial crefully, and Ch.9 of CTM again, and although I now know a lot more, I am still none the wiser! (I assume ch12 of the tutorial is a bit dated, and I could do with a clearer explanation of computing spaces.) Still - I'm getting there...

For instance, although I can accept your explanation that the assignment to the "FoundWord" Cell is bactracked in the second "choice" branch (instead of acting as a guard), I notice that my variable "CurrIsNum" which has _exactly_ the same scoping seems to work fine, no matter which "choice" branch it is bound in... Hm...

Hm, I see. If you only need that some solutions imply that some other should be discarded, think of using a "choice penalty" and SearchBest instead of SearchAll.
[...]
See what I mean?


This is not a bad idea practically, but I was really looking for something a little more... elegant (no offence meant :) ). Also will your method cause solutions to be generated which are then discarded??

Here is a (possibly) more elegant solution using a nested search and constraints rather than pure logic programming. It doesn't scale well to big dictionaries because it only use their first letter to decide whether to try to match them or not but this can be improved.

Yves

I would prefer it if it's already known beforehand that the solution is not acceptable, that the program doesn't generate it only to discard it a bit later. I admit I haven't studied the SearchBest functionaliy yet.

Cheers

Alex
_________________________________________________________________________________ mozart-users mailing list [email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users


Attachment: gat.oz
Description: Binary data

_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to