I have run into the smallest of problems while coding in Dialog.
Here is some code to illustrate:
(current player #alice)
(#alice is #in #room)
(room #room)
#black-kitten
(name *) black kitten
(* is #heldby #alice)
#white-kitten
(name *) white kitten
(* is #heldby #alice)
#sister
(name *) your sister
(dict *) my
(proper *)
(* is #in #room)
(perform [show #black-kitten to *])
(The #sister) says, "(The #black-kitten) is quite adorable, isn't it?"
(perform [show #white-kitten to *])
(The #sister) says, "The white kitten has grown quite large, hasn't it?"
And here is a transcript:
> show black kitten to sister
Your sister says, " The black kitten is quite adorable, isn't it?"
> show white kitten to sister
Your sister says, "The white kitten has grown quite large, hasn't it?"
The problem (which is easy enough to miss) is that there is a space between the quotation mark and the phrase “The black kitten”. If (the *), (A *), or (a *) is substituted for (The *), the problem persists.
What is happening here?