<div dir="ltr"><div>Thanks Zoltan.<br></div><div><br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
>>>It is native to Prolog. It is NOT native to Mercury. In fact, it definitely<br>
>>>would not work in Mercury. Since Mercury does not allow the definition<br>
>>>of a predicate to be modified, you would never be able to update<br>
>>>characters' status.<br></blockquote><div><br></div><div>I've been told this several times, but apparently the lesson hasn't sunk in completely. I thought the definition of a predicate was the "pred" and "mode" lines and that "dead(dan)" was...I'm unsure of the correct words...like <i>assigning</i> the name "dan" to the predicate. But, you are saying that each invocation of the predicate is part of its definition?</div><div><br></div><div>Let me ask a different question. Based on my description of the project, do you think Mercury is a good fit--better than C# alone? I ask because there are many game AI, NLP, and other libraries available for C#. But, I saw how Prolog handles things, fell in love, and starting searching for a version of Prolog compatible with C#. Now I wonder if I'm making my project more complicated without gaining an upside. Regardless, I'm super impressed with how Mercury can produce C# assemblies that work on multiple .NET platforms. <br></div><div><br></div><div>-david<br></div></div></div>