annoying pronouns

26 views
Skip to first unread message

John J Lee

unread,
Jan 7, 1997, 3:00:00 AM1/7/97
to

I hope I didn't post this thing last term and forget about it...

Anyway:
--
> x desk

The desk contains a fascinating Widget.

> take it

You can't do that to the desk!
--
D'oh! Surely there's some way of stopping this.

John

--
jjl...@york.ac.uk

Advice: the smallest current coin.
Ambrose Bierce, The Devil's Dictionary


Adam Cadre

unread,
Jan 7, 1997, 3:00:00 AM1/7/97
to

John J Lee wrote:
>
> > x desk
>
> The desk contains a fascinating Widget.
>
> > take it
>
> You can't do that to the desk!
> --
> D'oh! Surely there's some way of stopping this.

You didn't specify which language you're using, but in Inform you
can fix this by fiddling around with itobj. You might include an
after-routine that would set itobj equal to the child of the desk
after a Search command, should it reveal that the desk has only one
child.

-----
Adam Cadre, Durham, NC
Tired of the endless reviews of 1996? Then take a look back at 1997!
1997: the Year in Review -- http://www.duke.edu/~adamc

Andrew Plotkin

unread,
Jan 7, 1997, 3:00:00 AM1/7/97
to

John J Lee (jjl...@york.ac.uk) wrote:

> I hope I didn't post this thing last term and forget about it...

You didn't say what language you're using; I'm assuming Inform because I
know the answer. :)

> Anyway:
> --
> > x desk

> The desk contains a fascinating Widget.

> > take it

> You can't do that to the desk!
> --
> D'oh! Surely there's some way of stopping this.

Object desk
with description [;
itobj = widget;
"The desk contains a fascinating Widget.";
],

The problem is that if you want to do this, you really ought to do it
consistently. Which is a tremendous pain in the butt. If it was only in
this instance, the player would not be expecting it (since "it" usually
refers to the last item *he* referred to.) Then you'd get

> x desk
The desk contains a fascinating Widget.

> put Boring Widget on it
You can't put things on the fascinating Widget!

which is just as annoying.

A very crude solution would be to have the printing functions (CDefArt,
etc) set "itobj" to their arguments. This would work very badly.

--Z

--

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."

Neil K. Guy

unread,
Jan 7, 1997, 3:00:00 AM1/7/97
to

John J Lee (jjl...@york.ac.uk) wrote:

: > x desk


:
: The desk contains a fascinating Widget.
:
: > take it
:
: You can't do that to the desk!
: --
: D'oh! Surely there's some way of stopping this.

You didn't say what language you're using, and without that vital piece
of information it's rather difficult to answer your question in a useful
fashion. 'Round these here parts it's a custom to preface the subject of
your message with [TADS] or [Inform] or [Whatever] language you're using
so everyone knows.

Anyway, with TADS you use the setit() feature to specify an item or items
to be "it". (tag!) I'm sure Inform has a similar function, but I've no
idea what it is.

- Neil K. Guy

--
the Vancouver CommunityNet * http://www.vcn.bc.ca/
(formerly the Vancouver Regional FreeNet)

Nulldogma

unread,
Jan 7, 1997, 3:00:00 AM1/7/97
to

> --

> > x desk
>
> The desk contains a fascinating Widget.
>
> > take it
>
> You can't do that to the desk!
> --
> D'oh! Surely there's some way of stopping this.

You don't indicate which language you're using, but in TADS, you would do
this:

desk:fixeditem
ldesc={"The desk contains a fascinating Widget."; setit(widget);}
;

Of course, what happens if the desk contains a widget, a doohickey, and a
thingamabob, I don't know. And then you need to consider that the player
may have *meant* to try to take the desk.

All reasons why I don't use setit(), and leave the parser to its own
devices.

Neil
---------------------------------------------------------
Neil deMause ne...@echonyc.com
http://www.echonyc.com/~wham/neild.html
---------------------------------------------------------

Erik Max Francis

unread,
Jan 7, 1997, 3:00:00 AM1/7/97
to

John J Lee wrote:

> I hope I didn't post this thing last term and forget about it...
>

> Anyway:


> --
> > x desk
>
> The desk contains a fascinating Widget.
>
> > take it
>
> You can't do that to the desk!
> --
> D'oh! Surely there's some way of stopping this.

But you asked to TAKE THE DESK, not TAKE THE WIDGET. Even in normal
conversation this ambiguity would be resolved to DESK not WIDGET.

--
Erik Max Francis | m...@alcyone.com
Alcyone Systems | http://www.alcyone.com/max/
San Jose, California | 37 20 07 N 121 53 38 W
&tSftDotIotE | R^4: the 4th R is respect
"You must surely know if man made heaven | Then man made hell"

Dan Shiovitz

unread,
Jan 8, 1997, 3:00:00 AM1/8/97
to

In article <19970107203...@ladder01.news.aol.com>,

Nulldogma <null...@aol.com> wrote:
>> --
>> > x desk
>>
>> The desk contains a fascinating Widget.
>>
>> > take it
>>
>> You can't do that to the desk!
>> --
>> D'oh! Surely there's some way of stopping this.
[..]

>Of course, what happens if the desk contains a widget, a doohickey, and a
>thingamabob, I don't know. And then you need to consider that the player
>may have *meant* to try to take the desk.
>
>All reasons why I don't use setit(), and leave the parser to its own
>devices.

One interesting thing to try (which TADS doesn't currently support (well ..
not without a lot of ugly hacking)) would be to set the it object to all
the last objects referred to, not just the last one. Then, when someone
uses "it" in a sentence, the parser would go down the list and use the
verify method to find the first appropriate one and return that. On the
other hand, if the person had used "them," it could return the entire
list.

This would hopefully make things like
> TAKE FISH FROM BOX. EAT IT.
and
> TAKE FISH FROM BOX. CLOSE IT.
both come out right.

I guess my idea for it/them isn't so great, though. Although
> TOUCH BLUE CRYSTAL TO GREEN CRYSTAL. PUT THEM IN BAG.
would give correct behavior, these wouldn't really:
> PUT FISH AND CACTUS ON DESK. TAKE THEM. (would try to take desk also)
> PUT FISH ON DESK. TAKE THEM. (ok.. this is weird input anyway)
> PUT FISH AND CACTUS IN BOX. TAKE IT. (probably the user means the box)

Ok.. umm.. how about when disambiguating "them", the parser first tries
to see if they had a list of objects in their command ("THE FISH AND THE
CAT"), and returns that. If not, it returns the "it" list. On the
other hand, when disambiguating "it", it returns the first singular object
it can find. Which, in turn, suggests that it might be best to handle it/them
with three slots (for noun, direct and indirect object), and each can
contain either an array of or a single object.
So this is doable, certainly. Is it worth it? Not sure, really. I don't
use "it" very often myself, and never use "them". But if they were
implemented this well, I might get into the habit of using them more.

>Neil
--
dan shiovitz scy...@u.washington.edu sh...@cs.washington.edu
slightly lost author/programmer in a world of more creative or more
sensible people ... remember to speak up for freedom because no one else
will do it for you: use it or lose it ... carpe diem -- be proactive.
my web site: http://weber.u.washington.edu/~scythe/home.html some ok stuff.


Nulldogma

unread,
Jan 8, 1997, 3:00:00 AM1/8/97
to

> So this is doable, certainly. Is it worth it? Not sure, really. I
don't
> use "it" very often myself, and never use "them". But if they were
> implemented this well, I might get into the habit of using them more.

I'd say anything that makes life easier for the players is a good thing,
and totally worth it.

Of course, I'm not volunteering to figure out the code. But I'd use it if
you wrote it, Dan.

Aquarius

unread,
Jan 8, 1997, 3:00:00 AM1/8/97
to

In article <Pine.SGI.3.95L.97010...@tower.york.ac.uk>, John J Lee spoo'd forth:

: I hope I didn't post this thing last term and forget about it...

: Anyway:
: --
: > x desk

: The desk contains a fascinating Widget.

: > take it

: You can't do that to the desk!
: --
: D'oh! Surely there's some way of stopping this.

doesn't setit(widgetItem) work? This is TADS, btw; I know absolutely
nothing about Inform. (Sorry, Mr Nelson - still haven't got round to
looking at it :)

Aquarius

--
"The grand plan that is Aquarius proceeds apace." - 'Ronin', Frank Miller.
----aqua...@cryogen.com | http://www.netforward.com/cryogen/?aquarius----
I would not bet against the existence of time machines. My opponent might
------ have seen the future and know the answer. - Stephen Hawking -------

Gareth Rees

unread,
Jan 8, 1997, 3:00:00 AM1/8/97
to

Andrew Plotkin <erky...@netcom.com> wrote:
> itobj = widget;

`ResetVagueWords(widget);' is a better way of making pronouns refer to
the widget (it copes correctly if the widget is animate and/or female).

--
Gareth Rees

Julian Arnold

unread,
Jan 8, 1997, 3:00:00 AM1/8/97
to

In article <Pine.SGI.3.95L.97010...@tower.york.ac.uk>,

John J Lee <URL:mailto:jjl...@york.ac.uk> wrote:
>
>
> I hope I didn't post this thing last term and forget about it...
>
> Anyway:
> --
> > x desk
>
> The desk contains a fascinating Widget.
>
> > take it
>
> You can't do that to the desk!
> --
> D'oh! Surely there's some way of stopping this.

My language of choice is Hugo. :)

You achieve this with the AssignPronoun routine:
object desk "desk"
{
long_desc {


"The desk contains a fascinating Widget."

AssignPronoun(widget)
}
...
}

This is open to the same problems as Andrew Plotkin pointed out in his Inform
answer.

Jools
--
"For small erections may be finished by their first architects; grand
ones, true ones, ever leave the copestone to posterity. God keep me
from ever completing anything." -- Herman Melville, "Moby Dick"


Adam Dawes

unread,
Jan 9, 1997, 3:00:00 AM1/9/97
to

Hi John!

JJL> --
>> x desk
JJL> The desk contains a fascinating Widget.
>> take it
JJL> You can't do that to the desk!
JJL> --

JJL> D'oh! Surely there's some way of stopping this.

This is sometimes frustrating, but how is the program to know which "it" you
are talking about? How about this:

> x tin
In the tin is a biscuit
> take it

..which item have you asked to take? I certainly don't know, and neither would
the program, it's too ambiguous.

I suppose it could default to a referenced object if the primary object is
static/scenery..?

.\dam. [Team AMIGA] //\ Ad...@darkside.demon.co.uk \//
> Homepage at http://www.geocities.com/TimesSquare/1225/


Brendan Lane

unread,
Jan 9, 1997, 3:00:00 AM1/9/97
to

Erik Max Francis <m...@alcyone.com> wrote:
>John J Lee wrote:
>> Anyway:
>> --
>> > x desk

>>
>> The desk contains a fascinating Widget.
>>
>> > take it
>>
>> You can't do that to the desk!
>> --

>> D'oh! Surely there's some way of stopping this.
>
>But you asked to TAKE THE DESK, not TAKE THE WIDGET. Even in normal
>conversation this ambiguity would be resolved to DESK not WIDGET.

Hmmmm...It appears to me that there are two different interpretations
of the IF here. John seems to view the IF session as a conversation
between player and computer, whereas Erik seems to be seeing it as a
series of commands carried out by the computer. If the game really is
just a series of commands, then

----
> x desk

The desk contains a fascinating Widget.

> take it

You can't do that to the desk!
----

is certainly correct. However, if the game is more of a conversation between
player and parser, then the exchange

----
> x desk

The desk contains a fascinating Widget.

> take it

Taken.
----

is correct, as the last thing referred to _in_the_conversation_ is the Widget.

I suppose it's all in how you view the game. Though, in any case, this:

----
> x desk. take it.

The desk contains a fascinating Widget.

You can't do that to the desk!
----

should be the proper exchange in either case. So, is this last possible? Can
we distinguish between two commands issued on two lines and two commands
issued at the same time? In the first case, the last thing referred to is the
Widget. In the latter, we haven't been told about the Widget yet, so we must
be talking about the desk. Hmmm...


Brendan Lane.

--
Words are indeed the most powerful invention | laneb @ cpsc.ucalgary.ca |
of all; even the slow, stupid, and | that's |
simple-minded can use them to great effect. | The University of Calgary|
- Brendan Lane | 'The Barbarian West' |

DaveK

unread,
Jan 10, 1997, 3:00:00 AM1/10/97
to

Erik Max Francis wrote:
>
> John J Lee wrote:
>
> > > x desk
> >
> > The desk contains a fascinating Widget.
> >
> > > take it
> >
> > You can't do that to the desk!
> > --
> > D'oh! Surely there's some way of stopping this.
>
> But you asked to TAKE THE DESK, not TAKE THE WIDGET. Even in normal
> conversation this ambiguity would be resolved to DESK not WIDGET.

... in normal conversation......

A: The local cinema is showing a great new film.

B: Let's go and watch it then.

A: Why? It's a pretty dull-looking building that just sits there doing
nothing?

... nahh, that's not how _my_ normal conversations resolve their
ambiguity...
... errm well actually I do answer questions like that sometimes...
... but only when I'm being facetious....

[BTW:] Greetings all, I'm new to this group; My name is Dave, I'm a
long-time
I-F fan, and I generally have the correct^H^H^H^H^H^H^H^H^H^H^H an
opinion on
any subject you care to name.. so I expect you'll see me popping up now
and
again. Oh, and I've just recently downloaded Inform and various of the
interpreters, and would like to thank Graham Nelson and all the others
who
have worked hard on ports. Much respects, people. It's good stuff!

cya,

DaveK.

Joe Mason

unread,
Jan 10, 1997, 3:00:00 AM1/10/97
to

"annoying pronouns", declared John J from the Vogon ship:

JJ>> x desk

JJ>The desk contains a fascinating Widget.

JJ>> take it

JJ>You can't do that to the desk!
JJ>--
JJ>D'oh! Surely there's some way of stopping this.


In _In The End_ I occasionally set the pronouns manually (ie. when Annie
first appears I have the line "herobj = Annie" so that you can refer to
her as "her" immediately). But I didn't do it systematically. Perhaps
it could be done in the libraries, but I'm not sure where to put it
exactly.

Joe

Avrom Faderman

unread,
Jan 10, 1997, 3:00:00 AM1/10/97
to

The fact is, binding pronouns properly is really really hard to
automate. I'd actually guess it's simply beyond the state of the art
in natural language processing in general; in fact, IIRC, as of 4
years ago at least, there was not even a feeling in the _theoretical_
linguistics community that a good account of how it worked would come
out any time soon.

Some illustrations of just how hard the problem is, although some
others have already been given elsewhere in this thread:

In article <32D6B4...@soundcraft.co.uk.trim.these.last.five.words>,
DaveK <Da...@soundcraft.co.uk.trim.these.last.five.words> wrote:
[snip]


>... in normal conversation......
>
>A: The local cinema is showing a great new film.
>
>B: Let's go and watch it then.

And points out that "it" is bound to "film," not "cinema."

Now, note 1: This isn't just because "film" came after "cinema."

A: There's a great new film playing at the local cinema.


B: Let's go and watch it then.

Someone earlier in this thread suggested that the _appropriateness_ of
applying the verb to the various possible antecedents was what was
important--they used this to explain why

Put chocolate in box. Close it.
Put chocolate in box. Eat it.

Had different antecedents for "it"--one eats chocolates but closes
boxes.

But appropriateness can be disturbingly contextual. We might think
that "it" in both of the previous cases refers to the movie rather
than the building because, generally, one watches movies, not
buildings. But consider:

Detective A: I here the drug deal's going down outside the theater
where they're showing that new film.
Detective B: Let's watch it then.

It's not simply a matter of what sorts of things generally get watched
and what sorts of things don't. It's a matter that depends seriously
on the context of use; what the goals of the individuals
participating (in this case; other individuals' goals might be
relevant in other cases) would make it reasonable to want to watch.

Unless an IF game can figure this sort of thing out about its player,
I think any expectation that it will deal with pronouns in a diverse
set of cases realistically is one that is unmeetable. I think that a
convention of the sort we have--where a pronoun is bound to the last
agreeing noun used by the player--is a reasonable convention to use.
It will cause an occasional compromise of fluency of the parser, but
at least it's one that's easily predictable and avoidable by the
player. Complex attempts to bind pronouns, unless they actually
succeed, will occasionally lead to the parser's acting in apparently
random ways.

Just my belief, of course. Wouldn't want to be one of those people
being maligned over on r.g.i-f.

-Avrom


Jason B Dyer

unread,
Jan 11, 1997, 3:00:00 AM1/11/97
to

DaveK (Da...@soundcraft.co.uk.trim.these.last.five.words) wrote:
: > But you asked to TAKE THE DESK, not TAKE THE WIDGET. Even in normal

: > conversation this ambiguity would be resolved to DESK not WIDGET.

: ... in normal conversation......


: A: The local cinema is showing a great new film.
: B: Let's go and watch it then.

: A: Why? It's a pretty dull-looking building that just sits there doing
: nothing?

A: This package has the new fishbowl in it, sir.

B: Great, put it on the shelf.

A: But I haven't opened the package yet! You're supposed to do that.

English is a tricky language, yes?

Jason Dyer
jd...@u.arizona.edu

Andrew Plotkin

unread,
Jan 11, 1997, 3:00:00 AM1/11/97
to

Jason B Dyer (jd...@mustique.u.arizona.edu) wrote:
> DaveK (Da...@soundcraft.co.uk.trim.these.last.five.words) wrote:
> : > But you asked to TAKE THE DESK, not TAKE THE WIDGET. Even in normal
> : > conversation this ambiguity would be resolved to DESK not WIDGET.

> : ... in normal conversation......
> : A: The local cinema is showing a great new film.
> : B: Let's go and watch it then.
> : A: Why? It's a pretty dull-looking building that just sits there doing
> : nothing?

> A: This package has the new fishbowl in it, sir.
> B: Great, put it on the shelf.
> A: But I haven't opened the package yet! You're supposed to do that.

So, what does normal conversation have to do with IF anyway?

On a different note, there *are* times when it's good to set the "it"
manually.

* When one object transforms into another
* When you trade one object for another ("You hand the coin to the
vendor; he places the banana on the counter.")
* When an object is explicitly offered to you ("A genie appears and holds
out a glowing wand.")

Erik Max Francis

unread,
Jan 11, 1997, 3:00:00 AM1/11/97
to

Brendan Lane wrote:

> Hmmmm...It appears to me that there are two different interpretations
> of the IF here. John seems to view the IF session as a conversation
> between player and computer, whereas Erik seems to be seeing it as a
> series of commands carried out by the computer.

No, I'm not seeing it that way; that's what "Take it" means in plain
English. Even in this context there's no way that a _human_ could be sure
what the command referred to. After all, "Examine the desk. Take it" is
the same as "Examine the desk, and then take it." This means, in plain
English, tell me something about the desk, and then pick the desk up.
Context-sensitive pronouns are a terribly bad idea for a number of reasons.
For instance,

-----
> EXAMINE THE BOOKSHELF

The bookshelf is old and dusty. Contained on it are volumes by Vonnegut,
Clarke, Asimov, Niven, and a strange notebook wrapped in rubber bands.

> TAKE IT

What do you mean, the bookshelf, the volume by Vonnegut, the volume by
Clarke, the volume by Asimov, the volume by Niven, or the strange notebook?
-----

There's no way a human could understand what this would mean, let alone a
computer. Take an even more mundane example:

-----
> LOOK

On the floor is a paper bag.

> EXAMINE THE PAPER BAG

The paper bag contains a beer can (empty).

> TAKE IT

Taken.
-----

Okay, now what did it take, the paper bag or the beer can?

In plain English, the pronoun _it_ means "the last thing I referred to
directly." If you say, in English, "The desk contained a widget, but it
wasn't made of wood," do I mean the desk was red or the widget? I mean the
desk, obviously.

In addition, the contraction case I was talking about earlier, you could
combine them in one sentence:

> LOOK

> EXAMINE THE PAPER BAG. TAKE IT

The paper bag conatins a beer can (empty).

Taken.
-----

If _it_ refers to the last signficant thing mentioned in a description
(i.e., it's context-sensitive) then you've got a real problem; commands can
change meaning without anything happening, simply by substitution of
pronouns.

This is unacceptable -- pronouns should refer to the last thing that the
player referred to, not the last thing that was described.

London David

unread,
Jan 11, 1997, 3:00:00 AM1/11/97
to

In article <5b77ig$k...@news.ccit.arizona.edu> jd...@mustique.u.arizona.edu
(Jason B Dyer) writes:
>DaveK (Da...@soundcraft.co.uk.trim.these.last.five.words) wrote:
>: > But you asked to TAKE THE DESK, not TAKE THE WIDGET. Even in normal
>: > conversation this ambiguity would be resolved to DESK not WIDGET.
>
>: ... in normal conversation......
>: A: The local cinema is showing a great new film.
>: B: Let's go and watch it then.
>: A: Why? It's a pretty dull-looking building that just sits there doing
>: nothing?
>
>A: This package has the new fishbowl in it, sir.
>
>B: Great, put it on the shelf.
>
>A: But I haven't opened the package yet! You're supposed to do that.
>
>English is a tricky language, yes?

Yeah, and this is the basis of one of the running gags in the Airplane!
and Police Squad series:

A: Quick, take me to the hospital!

B: The hospital? What is it?

A: It's a big building with doctors and patients, but that's not important
right now.

David London

Nulldogma

unread,
Jan 11, 1997, 3:00:00 AM1/11/97
to

> Detective A: I here the drug deal's going down outside the theater
> where they're showing that new film.
> Detective B: Let's watch it then.

Or, of course (famously):

"We need to get this man to a hospital!"

> WHAT IS IT?

"It's a big building with doctors in it, but that's not important right
now..."

Chuan-Tze Teo

unread,
Jan 11, 1997, 3:00:00 AM1/11/97
to

Avrom Faderman wrote:

> Unless an IF game can figure this sort of thing out about its player,
> I think any expectation that it will deal with pronouns in a diverse
> set of cases realistically is one that is unmeetable. I think that a
> convention of the sort we have--where a pronoun is bound to the last
> agreeing noun used by the player--is a reasonable convention to use.
> It will cause an occasional compromise of fluency of the parser, but
> at least it's one that's easily predictable and avoidable by the
> player. Complex attempts to bind pronouns, unless they actually
> succeed, will occasionally lead to the parser's acting in apparently
> random ways.

On the other hand, I think it feels much more fluid if after examining a
table and finding a piece of paper on it, I can 'read it' and not have
the parser tell me "You can't read a table" or something of that sort. I
think the only realistic solution to this problem is for each object to
be considered and hacked on an individual basis... (very silly transcript
follows)


(start of game)

Boring Room

You are in a boring room. There is a table here. There is a policeman
here.

[itobj is set to the table as it's the only sensible object]
[and 'him' is set to the policeman]

>X HIM

He is a policeman. He is carrying a gun.

[itobj set to gun]

>X IT

It's a gun.

>ASK HIM ABOUT TABLE

The policeman offers no reply.

>X TABLE

It's a table.

There is a piece of paper on it.

[itobj is set to the paper, but make sure this is done only once;
otherwise we get problems if we want to do X TABLE. PUSH IT later on]

>READ IT

"The table is fragile. This note will self-destruct in five seconds."

The piece of paper disappears in a puff of green smoke.

[itobj is set to the table, since the paper is no longer accessible; if
it could be picked up, then it would be better to leave it]

>KICK IT

You destroy the table. Unfortunately, the policeman spots you! You are
summarily shot on the spot for vandalism.

*** You have died ***


On a serious note, I think allowing this sort of use of "it" in clear-cut
cases does add to a game. I always find the desk example which started
this thread slightly annoying when I run into it in games.

- Chuan

Russ Bryan

unread,
Jan 12, 1997, 3:00:00 AM1/12/97
to

In article <32D80C...@hermes.cam.ac.uk>, Chuan-Tze Teo
<ct...@hermes.cam.ac.uk> wrote:

> The policeman offers no reply.
>
> >X TABLE
>
> It's a table.
>
> There is a piece of paper on it.
>
> [itobj is set to the paper, but make sure this is done only once;
> otherwise we get problems if we want to do X TABLE. PUSH IT later on]
>
> >READ IT
>
> "The table is fragile. This note will self-destruct in five seconds."
>
> The piece of paper disappears in a puff of green smoke.
>
> [itobj is set to the table, since the paper is no longer accessible; if
> it could be picked up, then it would be better to leave it]
>
> >KICK IT
>
> You destroy the table. Unfortunately, the policeman spots you! You are
> summarily shot on the spot for vandalism.

It just won't happen. I've played the game before, so I don't want to read
the piece of paper; I just want to push the table and get it over with.
There are two desks in the room, or a desk and a chair, and how do you know
that I don't want to push the chair instead? What if there is a piece of
paper, a gun, and a bowl of oatmeal on the desk?

I see what you're saying, but I don't think it's correct. Andrew Plotkin's
recommendations (morphing an item, exchanging an item, or being handed an
item) cover most occasions where "it" can be considered necessary. They
are situations where EVERYONE will agree on what "it" refers to. Look over
your examples and change them so they aren't quite so neatly designed for
your thesis, and I think you'll see what I mean.

ã Russ

Jason L Tibbitts III

unread,
Jan 12, 1997, 3:00:00 AM1/12/97
to

>>>>> "EMF" == Erik Max Francis <m...@alcyone.com> writes:

EMF> After all, "Examine the desk. Take it" is the same as "Examine the
EMF> desk, and then take it."

Does it? The intervening text might shift focus completely away from the
desk.

I don't see why it wouldn't be an acceptable solution to attempt to
disambiguate as much as possible, then ask the user to choose among the
ambiguous objects. When presented with a scene describing a tall building
and a letter on the floor, there is little point in forcing the user to
inform the game that 'it' refers neither to the floor nor to the building.

It's possible, though, that this reduces to the 'get all' question.
--
Jason L. Tibbitts III - ti...@uh.edu - 713/743-8684 - 221SR1
System Manager: University of Houston High Performance Computing Center
1994 PC800 "Kuroneko" DoD# 1723

aul...@koala.scott.net

unread,
Jan 13, 1997, 3:00:00 AM1/13/97
to

>On a different note, there *are* times when it's good to set the "it"
>manually.
>
>* When one object transforms into another
>* When you trade one object for another ("You hand the coin to the
>vendor; he places the banana on the counter.")
>* When an object is explicitly offered to you ("A genie appears and holds
>out a glowing wand.")

I like these suggestions, but there is one thing that concerns me.

This is fine:
------

>RUB LAMP


A genie appears and holds out a glowing wand.

>TAKE IT
The wand glows brighter as you take it.

(Although, if you want to drop the lamp after rubbing it, DROP IT will
fail. Fair trade? I guess so.)

------
This is not:
------

>DROP DYNAMITE
Dropped.

>LIGHT MATCH
Done.

A genie appears and holds out a glowing wand.

>LIGHT FUSE WITH IT
You don't have the wand.

The match burns down to your fingertips and goes out.

>SCREAM
Aaaarrrrgggghhhh!

(Actually, this example is a little dishonest, because time wouldn't
elapse after the failed command.)

------
The point is, I don't want a set plan derailed by some random outside
event that just happens to occur while I'm in the middle of doing
something.

In other words, don't change what "it" refers to except in direct
response to something I have done, and then only when it's bleedingly
obvious.

Infocom did this at least once, as in the following paraphrase of
Spellbreaker.

-------
>DROP MAGIC CARPET
Done.

In the distance, you see a giant Roc flying toward you.

>SIT ON IT
You can't reach the Roc from here.

--------

I think Infocom was getting pretty happy with the antecedent shifting
at this point in their history. This is an example where they seemed to
take it too far. I don't like daemon-spawned events messing with my
pronouns.

That's all,

Joe -- as always, IMHO, YMMV, etc. I wouldn't want to appear pre-pubescent
and arrogant and whatever other hooey *some people* might think
otherwise. Oh yeah, I almost forgot the most important part -- =)

John J Lee

unread,
Jan 13, 1997, 3:00:00 AM1/13/97
to

On Sat, 11 Jan 1997, Chuan-Tze Teo wrote:
[...]
> On the other hand, I think it feels much more fluid if after examining a
> table and finding a piece of paper on it, I can 'read it' and not have
> the parser tell me "You can't read a table" or something of that sort. I
> think the only realistic solution to this problem is for each object to
> be considered and hacked on an individual basis... (very silly transcript
> follows)

Yeah, my original post probably wasn't very clear:

I was just putting in a plea for authors to remember this, not asking how
to implement it, and I was only referring to one really specific case:

> take the fascinating newly-revealed intruiging thingy "it" from the
fixed-in-place, utterly immovable and uninteresting object.

But that's fixed in place!

I seem to run into this one almost every time I play a game.

Still, it might be an idea to make all kinds of exceptions of the kind
Chuan-Tze lists. Personally, I'm all for as many exceptions as can be
squeezed in, almost anywhere in a game. Most of the time it's clear to a
human what the player wants, so you can stick in an exception.

But you're not carrying the stick!

Chuan-Tze Teo

unread,
Jan 14, 1997, 3:00:00 AM1/14/97
to

In article <5bdv3c$a...@koala.scott.net> aul...@koala.scott.net writes:

>The point is, I don't want a set plan derailed by some random outside
>event that just happens to occur while I'm in the middle of doing
>something.

>In other words, don't change what "it" refers to except in direct
>response to something I have done, and then only when it's bleedingly
>obvious.

IMO "it" is there for two main purposes- 1) immediately repeated
actions with the same object (i.e. GET ITEM. USE IT) and 2) making the
player's input more like natural English conversation. I don't see
that adherence to "existing convention" is a good thing in itself. In
fact I would definitely be more annoyed in your Spellbreaker example
if "X IT" threw up a description of the carpet. I almost expect
important daemon-generated events (something materialises in
front of you) to change the meaning of "it" as I would if someone had
brought up a new topic in a conversation.

The main problem with the style I am advocating is player-issued
"chain commands" such as the reasonably common X DESK. SEARCH
IT. LOOK UNDER IT. If the parser splits this into three commands and
translates them one after the other, there may be disconcerting results
even in clear-cut cases such as those Andrew Plotkin listed a while
back. If "it" is first translated into "desk" before execution, this
particular problem is prevented.

(Hmm. Which style does the Inform parser use?)

- Chuan

Erik Max Francis

unread,
Jan 14, 1997, 3:00:00 AM1/14/97
to

Jason L Tibbitts III wrote:

> EMF> After all, "Examine the desk. Take it" is the same as "Examine the
> EMF> desk, and then take it."
>
> Does it? The intervening text might shift focus completely away from the
> desk.

My point was that in most interaction fiction parsers, you can queue up
multiple orders in one line by using end-of-sentence periods.

So

> EXAMINE THE DESK. TAKE IT

does the same thing as

> EXAMINE THE DESK

...

> TAKE IT

Now if the description of what's on the desk substitutes something (say, a
widget) for that pronoun _it_, then you have a problem, because the meaning
of the pronoun has changed _after_ you gave the order to TAKE IT but before
that order was executed. That's not reasonable, because it means that
queueing up orders is useless, since you don't know when contexts are going
to change between the queued orders.

> It's possible, though, that this reduces to the 'get all' question.

Right. Yes, there are possible things that you could do to remedy the
situation to make it seem more natural for some people (but not for others,
since the idea of substituting pronouns is a very subjective thing). But
then you run into problems with context switches, and you'd have to take
them into account, etc.

The bottom line is that although in some very limited circumstances it
might be clear what's going on, but in generaly it is an intractible
problem and in my opinion is makes things far messier.

--
Erik Max Francis | m...@alcyone.com
Alcyone Systems | http://www.alcyone.com/max/
San Jose, California | 37 20 07 N 121 53 38 W
&tSftDotIotE | R^4: the 4th R is respect

"You must surely know if man made heaven | Then made made hell"

Linards Ticmanis

unread,
Jan 15, 1997, 3:00:00 AM1/15/97
to

There was a discussion here about the following case:
__
> search drawer and then look under it

In the drawer, you find a large assortment of pencils ranging in
hardness from coal dust in a wooden tube to something rather appropriate
to poke holes into vandal-proof steel classroom desks. Clearly the
person who worked here until recently must have been into professional
drawing (or maybe just in search of new chewing experiences, from the
way most of the pencil's back ends look).

There's nothing under the assortment of pencils (besides a few wet spots
on the wood)
__

Thus missing the secret testament donating the artist's works to the
local "Museum of Distemporary Art" that was glued under the drawer to
hide it from his greedy son-on-law.


My solution here would be to have two "it" variables, one that is being
set and another one that is being referred to. Only when a prompt is
issued would these two be put back into sync again. Then "it" could be
set fairly generally whenever an object of some importance is mentioned
(e.g. anything that isn't just SCENERY).

Generally disambiguation should be improved: one would OPEN only stuff
that is OPENABLE but not OPEN, for example, so just typing OPEN should
select such an object if there is one.

--

Linards Ticmanis

<A HREF="mailto:tic...@reze-1.rz.rwth-aachen.de">
tic...@reze-1.rz.rwth-aachen.de</A>

<BRIBE> me. I'll leave.

aul...@koala.scott.net

unread,
Jan 15, 1997, 3:00:00 AM1/15/97
to

In article <ctt20.327...@hermes.cam.ac.uk>,
Chuan-Tze Teo <ct...@hermes.cam.ac.uk> wrote:

>IMO "it" is there for two main purposes- 1) immediately repeated
>actions with the same object (i.e. GET ITEM. USE IT) and 2) making the
>player's input more like natural English conversation.

>I don't see
>that adherence to "existing convention" is a good thing in itself.

Not sure what you mean by this. Was I advocating this? I didn't THINK
I was, but... (I'm not even aware what the existing convention is, if
there is one.)

>In
>fact I would definitely be more annoyed in your Spellbreaker example
>if "X IT" threw up a description of the carpet.

But this is a direct contradiction of what you said in point 1) above.
Now you're saying that DROP CARPET then X IT should _not_ give a
description of the carpet.

>I almost expect
>important daemon-generated events (something materialises in
>front of you) to change the meaning of "it" as I would if someone had
>brought up a new topic in a conversation.

I see your point, but my Spellbreaker example was about something that
appears IN THE DISTANCE, and might possibly be ignored as simple
atmosphere. It's as if Nine Points did something like this:

------

Darkness
It is pitch dark, and you can't see a thing.

>TURN ON LAMP
You fumble over the lamp's surface; it takes a few moments before you
feel the switch. The lantern starts humming as it lights up.

Treasure Vault
A thick layer of dust covers everything in this room. There are many
old boxes and older bags. Your uncle's bedroom lies to the west.

Your uncle's treasure chest sits here, tightly closed.

A scratching sound in the rafters unnerves you.

>DROP IT

You're not holding the scratching sound.

------

The genie example I gave, where it interrupts what you're doing is a
what-if scenario. What if I were already poised to type LIGHT FUSE
WITH IT when the genie appeared (like the Wizard of Frobozz or the
Jester) and I decided to go ahead with what I was doing and worry about
the genie on my next turn? Or if I just typed all the commands of a
sequence quickly, then read the results of all of them afterward?

>The main problem with the style I am advocating is player-issued
>"chain commands" such as the reasonably common X DESK. SEARCH
>IT. LOOK UNDER IT.

Are you suggesting that a game should behave differently if a person
separates commands with periods instead of carriage returns?
That's a bold suggestion, but not one I can entirely disagree with.

>If the parser splits this into three commands and
>translates them one after the other, there may be disconcerting results
>even in clear-cut cases such as those Andrew Plotkin listed a while
>back. If "it" is first translated into "desk" before execution, this
>particular problem is prevented.

I would hope that if an author thinks that an event is significant enough
to shift the pronouns around, then it is significant enough to stop a
chain of commands. (i.e. DROP CARPET. SIT ON IT would never even attempt
SIT ON IT.)

>(Hmm. Which style does the Inform parser use?)

Umm... Graham?

That is all,

Joe

aul...@koala.scott.net

unread,
Jan 16, 1997, 3:00:00 AM1/16/97
to

Erik Max Francis <m...@alcyone.com> wrote:

>In plain English, the pronoun _it_ means "the last thing I referred to
>directly." If you say, in English, "The desk contained a widget, but it
>wasn't made of wood," do I mean the desk was red or the widget? I mean the
>desk, obviously.

While I think I agree with you for the most part on the broad issue, I'm
not so sure about this paragraph (confusion about woodenness vs. redness
aside). In plain English, _it_ does not necessarily refer to the last
thing any one person mentioned, but more or less the most obvious point
of conversation. Consider your statement as a response to these two
statements:

"I'm looking for a wooden widget."

"I'm looking for a wooden object that contains a widget."

It's not so obvious you mean the desk, even if your statement is said
by itself and not as a response to these statements.

It is due to this ephemeral nature of the pronoun _it_ that I have said
that, since would be impossible in many common situations to tell what
the player means, that a game should show considerable reserve in shifting
the antecedent from the last object referred to, if it ever does at all.

All in all, I think it was probably a mistake to introduce the word to
the environment at all. It adds many more problems than it solves, and
these problems will not be solved until the computer can interpret the
inflection of voice input, or it can read the player's mind.

That is all,

Joe

Dave Gatewood

unread,
Jan 16, 1997, 3:00:00 AM1/16/97
to

aul...@koala.scott.net wrote:
> The point is, I don't want a set plan derailed by some random outside
> event that just happens to occur while I'm in the middle of doing
> something.

I agree with this viewpoint wholeheartedly. In fact I'd raise it to
another level. I would prefer that the game NEVER change the pronoun.
At least this way I always know what the pronoun is. Every other method
presented here is ad hoc - "okay, for this situation we'll reset the it
object, but for that one we won't." This would be more annoying than
the existing situation, because I don't know what the rules are. Even
simple, seemingly innocuous rules will spawn a host of simple, seemingly
innocuous counterexamples. The only way to keep it simple is to leave
the player in control of the pronouns.

I've noticed that (I believe for the first time) the latest Inform
library resets the it object when the player enters a room
(specifically, to the youngest child of the room). Example:

[Begin transcript.]

>GET POT OF GOLD
Taken.

>E
Clearing

Your lamp is here, glowing dimly.

On the ground is a pile of leaves.

>COUNT IT
69,105.

[End of transcript.]

A harmless enough feature, sometimes. But the assumption that the room
description is really part of the conversation is rarely correct after
the first 2 or 3 times through a room. I always play in verbose mode -
but obviously I don't re-read the room description every time I pass
through the Attic. So to change the pronoun based on something I
*didn't* read is really confusing.

Not infrequently I find myself doing something like this:

[Begin transcript.]

>GET ROD
Taken.

>STRIKE IT. POINT IT AT GROUND.
The ground trembles a bit, but nothing happens. Perhaps the ground is
too stable here.

>N
Another Room

There is a delicate Ming vase here.

>STRIKE IT. POINT IT AT GROUND.
In a fit of sudden rage, you smash the vase to bits.

I don't see that here.

[End of transcript.]

Okay, it's another dumb example, but it arises in one form or another in
a lot of i-f games. If I find a water balloon, the first thing I'm
gonna do is wander around from room to room typing "THROW IT AT
[OBJECT]" until I find the right target.

Dave

Nulldogma

unread,
Jan 16, 1997, 3:00:00 AM1/16/97
to

So how hard would it be to modify existing languages to require
disambiguation of "it" in these circumstances? Or, in TADSspeak, to allow
itobj to point to a list rather than a specific object?

Dave Gatewood

unread,
Jan 16, 1997, 3:00:00 AM1/16/97
to

aul...@koala.scott.net wrote:
>
> In article <ctt20.327...@hermes.cam.ac.uk>,
> Chuan-Tze Teo <ct...@hermes.cam.ac.uk> wrote:
>
> >The main problem with the style I am advocating is player-issued
> >"chain commands" such as the reasonably common X DESK. SEARCH
> >IT. LOOK UNDER IT.
>
> Are you suggesting that a game should behave differently if a person
> separates commands with periods instead of carriage returns?
> That's a bold suggestion, but not one I can entirely disagree with.

Too bold for me. Treating chained commands differently would just add
even more confusion. Personally, I never use chain commands. Instead,
if I have a string of actions, I just quickly type each command, hit
enter, type the next one, enter, boom boom boom without stopping to
catch my breath (just like I think most of us do when entering N, N, E,
N, NE, D). I've "essentially" just entered a chain of commands, as if I
had entered them on one line - but I'll get different treatment than if
I had done it with periods.

It's these everpresent ambiguities and special cases which make me think
the whole noble attempt should be discarded.

Dave

Andrew Plotkin

unread,
Jan 16, 1997, 3:00:00 AM1/16/97
to

Nulldogma (null...@aol.com) wrote:
> So how hard would it be to modify existing languages to require
> disambiguation of "it" in these circumstances? Or, in TADSspeak, to allow
> itobj to point to a list rather than a specific object?

You know, all I ever wanted was to be able to type "it" instead of "large
purple snorkelwhacker" five times in a row...

If I have to go through a disambiguation prompt every time, I'm going to
start crying.

(This was more relevant before GUI cut-and-paste interfaces, but *still*!)

I'm kind of dumbfounded by the claim that adding "it" to the environment
was a mistake... Whatever problems it adds, the problem it solves is a
honking big one. And the current solution is very easy to get used to,
*because* it's so simple-minded and consistent.

Nulldogma

unread,
Jan 17, 1997, 3:00:00 AM1/17/97
to

Andrew Plotkin wrote:
> Nulldogma (null...@aol.com) wrote:
> > So how hard would it be to modify existing languages to require
> > disambiguation of "it" in these circumstances? Or, in TADSspeak, to
allow
> > itobj to point to a list rather than a specific object?
>
> You know, all I ever wanted was to be able to type "it" instead of
"large
> purple snorkelwhacker" five times in a row...
>
> If I have to go through a disambiguation prompt every time, I'm going to

> start crying.

Well, we can't have that.

But I wasn't suggesting that we force players to go through a
disambiguation prompt every time. Just that we allow programmers to allow
for disambiguation in, well, ambiguous cases (like all that stuff about
desks and widgets).

If people are going to be screwing around with their itobj's, I'd rather
they screw with them in a way that allows me (the player) to say what I
mean, rather than throw genies in where I want carpets.

If that's possible.

Jason Melancon

unread,
Jan 17, 1997, 3:00:00 AM1/17/97
to

On Tue, 14 Jan 1997 11:22:48 -0800, Erik Max Francis <m...@alcyone.com>
wrote:

> My point was that in most interaction fiction parsers, you can queue up


> multiple orders in one line by using end-of-sentence periods.

> > EXAMINE THE DESK. TAKE IT
>
> does the same thing as
>
> > EXAMINE THE DESK
>
> ...
>
> > TAKE IT
>
> Now if the description of what's on the desk substitutes something (say, a
> widget) for that pronoun _it_, then you have a problem, because the meaning
> of the pronoun has changed _after_ you gave the order to TAKE IT but before
> that order was executed.

> The bottom line is that although in some very limited circumstances it


> might be clear what's going on, but in generaly it is an intractible
> problem and in my opinion is makes things far messier.

How about this idea, just out of the blue:

In conversation, if someone brings up a new concept or something, we
say, for example, "What's that?" something else with "that," not
"it." Do we need a new word here as well?

If people want to use a pronoun for something like
the-last-noun-in-the-conversation-of-the-game, why not use "that"? Of
course, it would only really fit in certain cases, where only one new
object is mentioned, like the widget on the desk, or when the last
thing mentioned is very important, obviously more so than the rest of
the text. We'd still need to use discretion programming it, but it
gets around a couple dilemmas. Useful enough to add a new construct?

I'm not a linguist, so I don't know if this "it/that" distinction is
very translatable.

> --
> Erik Max Francis | m...@alcyone.com
> Alcyone Systems | http://www.alcyone.com/max/
> San Jose, California | 37 20 07 N 121 53 38 W
> &tSftDotIotE | R^4: the 4th R is respect
> "You must surely know if man made heaven | Then made made hell"

Jason Melancon

Andrew Plotkin

unread,
Jan 17, 1997, 3:00:00 AM1/17/97
to

Nulldogma (null...@aol.com) wrote:
> Andrew Plotkin wrote:
> > Nulldogma (null...@aol.com) wrote:
> > > So how hard would it be to modify existing languages to require
> > > disambiguation of "it" in these circumstances? Or, in TADSspeak, to
> allow
> > > itobj to point to a list rather than a specific object?
> >
> > You know, all I ever wanted was to be able to type "it" instead of
> "large
> > purple snorkelwhacker" five times in a row...
> >
> > If I have to go through a disambiguation prompt every time, I'm going to

> > start crying.

> Well, we can't have that.

> But I wasn't suggesting that we force players to go through a
> disambiguation prompt every time. Just that we allow programmers to allow
> for disambiguation in, well, ambiguous cases (like all that stuff about
> desks and widgets).

It *would* be every time, inevitably, in some reasonable game situations.
I could make up an example here to demonstrate, but I'll spare you. Right
now, there are no ambiguous cases (except in some very technical
situations, which haven't even come up yet, which are better regarded as
bugs than "it" behaviors.) If the semantics of "it" change, so that
suddenly there are ambiguous cases, do you see where this gets annoying?

From elsewhere:

> In conversation, if someone brings up a new concept or something, we say,
> for example, "What's that?" something else with "that," not "it." Do we
> need a new word here as well?

However, that (no pun intended) is a very nice idea. "that" is the last
thing the game mentioned; "it" is the last thing you mentioned. It's
harder to get "that" right, but old-fashioned players (like me) have no
expectations for it, so it's an all-around win.

Anyone want to try to implement it?, Er, that?

Matthew Amster-Burton

unread,
Jan 17, 1997, 3:00:00 AM1/17/97
to

erky...@netcom.com (Andrew Plotkin) wrote:

>You know, all I ever wanted was to be able to type "it" instead of "large
>purple snorkelwhacker" five times in a row...

Wait, I honestly want to type "snorkelwhacker" many, many times. More
to the point, I want to *say* "snorkelwhacker." There, now I feel
better.

We now return you to your regularly scheduled pronominal discussion.

Matthew

Erik Max Francis

unread,
Jan 17, 1997, 3:00:00 AM1/17/97
to

aul...@koala.scott.net wrote:

> Are you suggesting that a game should behave differently if a person
> separates commands with periods instead of carriage returns?
> That's a bold suggestion, but not one I can entirely disagree with.

It is unacceptable for the meaning of a pronoun to change in a chained
command. If you're going to have the pronoun modification, then you're
going to have to disable it during chained commands. Which makes yet
another complication to the idea.

> I would hope that if an author thinks that an event is significant enough
> to shift the pronouns around, then it is significant enough to stop a
> chain of commands. (i.e. DROP CARPET. SIT ON IT would never even attempt
> SIT ON IT.)

The easier solution is to not use pronoun context changing at all. There
are good reasons not to bother: How many people are genuinely _confused_
when IT refers to the last thing they themselves referenced? Furthermore,
there are many ambiguous cases where you cannot know what the player means,
and moreover, there are many conditions where a human mind would very
clearly see the correct answer but without powerful natural language
processing it would be impossible for the computer to know. And if it's
programmed directly in when pronoun switches take place, it then becomes
totally unreliable to use pronouns, because you never know when they're
going to switch on you. It has to be automatic for it to work as expected,
and it's not feasible to make it automatic.

By contrast, how many people are genuinely confused or taken aback when
TAKE IT refers to the table and not something that just appeared in the
room?

--
Erik Max Francis, &tSftDotIotE / email: m...@alcyone.com
Alcyone Systems / web: http://www.alcyone.com/max/
San Jose, California, United States / icbm: 37 20 07 N 121 53 38 W
\
"Gods are born and die, / but the atom endures."
/ (Alexander Chase)

Nulldogma

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Andrew Plotkin wrote:
> It *would* be every time, inevitably, in some reasonable game
situations.
> I could make up an example here to demonstrate, but I'll spare you.
Right
> now, there are no ambiguous cases (except in some very technical
> situations, which haven't even come up yet, which are better regarded as

> bugs than "it" behaviors.) If the semantics of "it" change, so that
> suddenly there are ambiguous cases, do you see where this gets annoying?

No.

If you're going to mess around with "it" at all, I'd rather mess around
with it to disambiguate, rather than to switch "it" entirely to a
different object.

I know that you, as a programmer, don't want to mess with "it" ever.
That's fine, and I probably agree with you. (Having it refer to the last
item mentioned by the player is a damn fine standard, and it leads the
player blame themselves if they get it wrong, which is a good thing.) I
was just wondering if it was *possible* to have it point to a list, not a
single item, without hacking the current libraries to shreds.

I'm still wondering.

>
> From elsewhere:
>
> > In conversation, if someone brings up a new concept or something, we
say,
> > for example, "What's that?" something else with "that," not "it." Do
we
> > need a new word here as well?
>
> However, that (no pun intended) is a very nice idea. "that" is the last
> thing the game mentioned; "it" is the last thing you mentioned. It's
> harder to get "that" right, but old-fashioned players (like me) have no
> expectations for it, so it's an all-around win.

Except that this bears no particular resemblance to standard English
usage, and so nobody's going to know how to use it unless you tell them
first.

Dan Shiovitz

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

In article <19970118044...@ladder01.news.aol.com>,
Nulldogma <null...@aol.com> wrote:
[..]

>I know that you, as a programmer, don't want to mess with "it" ever.
>That's fine, and I probably agree with you. (Having it refer to the last
>item mentioned by the player is a damn fine standard, and it leads the
>player blame themselves if they get it wrong, which is a good thing.) I
>was just wondering if it was *possible* to have it point to a list, not a
>single item, without hacking the current libraries to shreds.
>
>I'm still wondering.

One of the things I'm doing in my spare time is messing with the TADS
source to do more or less this. Some (most, hopefully) of the
disambiguation problems can be cut out by using the ver methods, also.

Personally, there's about four cases when I ever want to use pronouns:
> X FOO. TAKE IT.
> PUT FOO IN BOX. CLOSE IT.
> GET FOO AND BAR. PUT THEM IN SACK.

Ok, three. All of these can be handled nicely by storing it as a list
and doing ver-disambiguation on it.

>Neil
--
dan shiovitz scy...@u.washington.edu sh...@cs.washington.edu
slightly lost author/programmer in a world of more creative or more
sensible people ... remember to speak up for freedom because no one else
will do it for you: use it or lose it ... carpe diem -- be proactive.
my web site: http://weber.u.washington.edu/~scythe/home.html some ok stuff.


Erik Max Francis

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

aul...@koala.scott.net wrote:

> It is due to this ephemeral nature of the pronoun _it_ that I have said
> that, since would be impossible in many common situations to tell what
> the player means, that a game should show considerable reserve in
> shifting
> the antecedent from the last object referred to, if it ever does at all.

That is my point as well. Since in the general case you can't do it
reliably, and in the cases where it is "obvious" (and it isn't obvious to
everyone) what _it_ should now refer to you'd have to program it in
manually, the effect is basically rendering the pronoun _it_ unreliable.

Erik Max Francis

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Nulldogma wrote:

> So how hard would it be to modify existing languages to require
> disambiguation of "it" in these circumstances? Or, in TADSspeak, to allow
> itobj to point to a list rather than a specific object?

By that, do you suggest that _it_ should refer to a list of objects? For
example:

> EXAMINE COUNTER

On the counter sits a stapler, a spatula, a coffee maker, a roll of
paper towels, a rice cooker, and a dirty dish.

> TAKE IT

Do you mean the counter, the stapler, the spatula, the coffee maker,
the roll of paper towels, the rice cooker, or the dirty dish?

The whole point of having the pronoun _it_ is to have a quick shorthand to
refer to something unambiguous for convenience. If _it_ simply refers to a
list of _anything_ you might be referring to, then it completely loses its
meaning, since the statement now becomes

> TAKE IT

Do you mean the counter, the stapler, the spatula, the coffee maker,
the roll of paper towels, the rice cooker, or the dirty dish?

> THE STAPLER

Rather than just

> TAKE THE STAPLER

As long as it's made clear that _it_ refers to the last direct object _the
player referred to_, there's no ambiguity.

Nulldogma

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Dan Shiovitz wrote:
> One of the things I'm doing in my spare time is messing
> with the TADS source to do more or less this.

Source, or ADV.T?

Nulldogma

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

But in your example, "it" wouldn't refer to the stapler, anyway, but to
the counter. Let's try another example:

> EXAMINE CARTON

In the carton you see a quantity of milk.

> TAKE IT

Which "it" does the player mean here? Could be either. Leaving "it" as
referring to the carton (the default behavior) is all fine and good, and
actually it's what I prefer in general. But what's the matter with
disambiguating here? It's certainly better than setting "it" to mean the
milk, which is what some people are advocating.

Yeah, sure, this would mean when you said "take it" in an ambiguous
situation, the game would ask you to type some more. But the tradeoff
would be that you wouldn't have players doing:

> X GIANT SCORPION

The giant space scorpion, attuned to your psychic energies, holds out
its claws to offer
you the object of your dreams: a magic glowing sceptre of eternal
bliss.

[player, not confident in how to spell "sceptre," types:]
> TAKE IT

The giant space scorpion rears back at your attempts to capture it,
and quickly stings
you to death with its enormous stinger.

Is this a worthwhile tradeoff? Probably not, and if anyone comes up with a
way to disambiguate "it," there's a good chance I won't use it. But I'd
still like to know if such a thing is *possible*.

John J Lee

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to Dave Gatewood

On Thu, 16 Jan 1997, Dave Gatewood wrote:

> aul...@koala.scott.net wrote:
> >
> > In article <ctt20.327...@hermes.cam.ac.uk>,
> > Chuan-Tze Teo <ct...@hermes.cam.ac.uk> wrote:
> >
> > >The main problem with the style I am advocating is player-issued
> > >"chain commands" such as the reasonably common X DESK. SEARCH
> > >IT. LOOK UNDER IT.
> >

> > Are you suggesting that a game should behave differently if a person
> > separates commands with periods instead of carriage returns?
> > That's a bold suggestion, but not one I can entirely disagree with.

This list of commands business is a good point - I don't tend to use them
as I always mess them up.

OK. You could:

a) Stop executing the string of commands when something happens.
b) Do this in particular circumstances when you think appropriate (this
in general depends on the rest of the commands, though)
c) 'precompile' a list of commands so you replace 'it' with the standard
(whatever the player last mentioned), and only make these exceptions for
single commands.
d) Say 'player beware'

a) is a bit restrictive, but the modification of this to b) might be
complicated and so practically incomplete, but it might be useful
sometimes. c) is inelegant, and you might want to ban 'it' from
walkthroughs, but this doesn't matter a bit.

I reckon d) is the best answer in most cases - after all, this happens all
the time anyway. Strings of commands almost always go wrong, cf plans in
real life.

I'm not sure about c), but I don't think so.



> Too bold for me. Treating chained commands differently would just add
> even more confusion. Personally, I never use chain commands. Instead,
> if I have a string of actions, I just quickly type each command, hit
> enter, type the next one, enter, boom boom boom without stopping to
> catch my breath (just like I think most of us do when entering N, N, E,
> N, NE, D).

Well what do you expect if you do this? If you walk about with your head
down, you walk into lamp-posts. Unless you know exactly where you are
going, that is, in which case there would be no problem here either!

> I've "essentially" just entered a chain of commands, as if I
> had entered them on one line - but I'll get different treatment than if
> I had done it with periods.
>
> It's these everpresent ambiguities and special cases which make me think
> the whole noble attempt should be discarded.


Oh for heavens sake. That would be giving in!

Remember the original example - leaving *that* as it was would surely be
worse than whatever changing it would cause. People have given some
rather contrived examples of what could go wrong, but the fact is they
would not happen in the rather limited circumstances where you would
actually use it.

Erik Max Francis

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Andrew Plotkin wrote:

> I'm kind of dumbfounded by the claim that adding "it" to the environment
> was a mistake... Whatever problems it adds, the problem it solves is a
> honking big one. And the current solution is very easy to get used to,
> *because* it's so simple-minded and consistent.

I totally agree. The use of _it_ is totally unambiguous _unless_ you start
doing all kinds of weird things to make it seem more natural, and it's
guaranteed that you'll never please anybody. In many cases, _it_ will
evaluate to more than one possible reference, in which case the use of it
has been made utterly pointless.

Erik Max Francis

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Jason Melancon wrote:

> How about this idea, just out of the blue:
>

> In conversation, if someone brings up a new concept or something, we
> say, for example, "What's that?" something else with "that," not
> "it." Do we need a new word here as well?

It's a good idea (making up a new word, that is), but does this sample
script make sense?

> EXAMINE DESK

On top of the wooden desk sits a stapler.

> GET THAT

[the stapler]
Taken.

It certainly works, but does it sound right? It doesn't sound quite right
to me. The demonstrative pronouns are usually used to indicate something
of the same type that was referred to, but a different instance of it:
"The apple you gave me tasted awful, but _that_ one is fine."

Still, in an interactive fiction context, where what the user types doesn't
always represent a real English phrase (like NORTH), for our purposes I'm
sure it would suit just fine.

Andrew Plotkin

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Nulldogma (null...@aol.com) wrote:
> Andrew Plotkin wrote:
> > It *would* be every time, inevitably, in some reasonable game
> situations.
> > I could make up an example here to demonstrate, but I'll spare you.
> Right
> > now, there are no ambiguous cases (except in some very technical
> > situations, which haven't even come up yet, which are better regarded as

> > bugs than "it" behaviors.) If the semantics of "it" change, so that
> > suddenly there are ambiguous cases, do you see where this gets annoying?

> No.

> If you're going to mess around with "it" at all, I'd rather mess around
> with it to disambiguate, rather than to switch "it" entirely to a
> different object.

Er, I am arguing that we should not mess around with "it" at all. Sorry
about the unclarity.

> I know that you, as a programmer, don't want to mess with "it" ever.

I'm arguing this as a player, not as a programmer.

> > From elsewhere:


> >
> > > In conversation, if someone brings up a new concept or something, we
> say,
> > > for example, "What's that?" something else with "that," not "it." Do
> we
> > > need a new word here as well?
> >

> > However, that (no pun intended) is a very nice idea. "that" is the last
> > thing the game mentioned; "it" is the last thing you mentioned. It's
> > harder to get "that" right, but old-fashioned players (like me) have no
> > expectations for it, so it's an all-around win.

> Except that this bears no particular resemblance to standard English
> usage, and so nobody's going to know how to use it unless you tell them
> first.

None of text adventure English bears any particular resemblance to
standard English, remember? It all has to be explained. The current usage
of "it" has to be explained -- that's how this whole discussion got
started! This usage of "that" would have to be explained, but I'm willing
to make that sacrifice, as it were. It's a *simple* explanation, at least.

Just because we haven't changed the command syntax since the invention of
"oops", doesn't mean I'm completely stuck in the mud about it... I just
want my miracles to be backwards-compatibile.

I actually considered some sample exchanges, and I can think in the
"that" modality quite well.

Box Room
You see two boxes (one rosewood and one mahogany), a compass, a silver key,
and an iron key.
> take magnet
Taken.
> examine it
It's an old compass. The needle points to the iron key.
> take that
[The iron key] Taken.
> unlock rosewood box with it
Inside the rosewood box you see a plover's egg the size of an emerald, a
diamond-shaped pear, and an antique fruitcake.
> take that
Which do you mean, the plover's egg the size of an emerald, the
diamond-shaped pear, or the antique fruitcake?
> egg
Taken.
> eat it
Yum, raw egg.
> north
Round Room
You see a partridge and a pear tree here.
> smell that
Which do you mean, the partridge or the pear tree?

Of course, if "that" refers to a list of objects which must be
disambiguated, "those" should refer to the whole list (ie, "take those"
is like "take egg, pear, cake".) This is an easy extension once the
"that" stuff is coded, oy argh...

Note that, with this many different pronouns around, the very brief
library messages like "Taken." and "Done." are really *too* brief. They
should display the name of the object if "it" or "that" was used in the
command. (Unless the user was asked to disambiguate, in which case it's
redundant. Got all that?)

To create the "that" list, I would first add code to the DefArt() and
related functions -- that takes care of most of it -- and of course an
AddToDemonstrativeList() call which the game programmer could call at any
time to add an object.

There might have to be special case code for "look", since that spews out
so many objects. Maybe only include objects listed in the "plain" list,
after the room description itself and all describe properties are run...
well, it would take experimentation.

Also, never set "that" to refer to an object which is already "it". The
output of "examine compass" might call CDefArt(self), but we don't want
it to become "that", because it's only mentioned because of the player's
command.

Unlike "it", this proposal for "that" does require some attention from the
game programmer to get it right in any given game.

Oh, let me say that it goes without saying that "pronouns" should list
the "that" list as well as the standard pronouns.

Drone

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Here's an example that will settle the question of disambiguation once
and for all:

You are lost in the substratum. There is a pile of its sitting beside a
pile of thats.

>X IT
Which it do you mean the it it or the that it?

>X IT IT
Which it it do you mean, the it it it or the that it it?

>THAT
That it it is sitting on top of the that it.

>X IT
Which it do you mean, the that it it, the that it, or the pile of its?

>QUIT!
This game is over, would you like to RESTART it, RESTORE it, or QUIT it.

>QUIT IT!
Which it do you mean, the RESTART it, the RESTORE it, or the QUIT it?
(Isn't scope wonderful?)

>QUIT IT!
I can't help it. I have a highly evolved disambiguation routine for your
convenience.

>FORGET IT.
You mean the help it?

>AAAAAAAAH!
It is over. Your score is that. It has been a production of Abbott &
Costello Pronoun Hell, Inc. To exit program, type it.

Drone.
--
"Esse Est Percipi."
foxg...@globalserve.net

Erik Max Francis

unread,
Jan 18, 1997, 3:00:00 AM1/18/97
to

Nulldogma wrote:

> I
> was just wondering if it was *possible* to have it point to a list, not a
> single item, without hacking the current libraries to shreds.
>
> I'm still wondering.

But having _it_ refer to a list of items rather than a single one defeats
the whole purposes. The player is using _it_ as an unambiguous reference
to one object for easy typing. If _it_ ends up bringing a disambiguation
question ("What do you mean, the desk or the widget?") then it's completely
lost its entire purpose.

Erik Max Francis

unread,
Jan 19, 1997, 3:00:00 AM1/19/97
to

John J Lee wrote:

> a) Stop executing the string of commands when something happens.
> b) Do this in particular circumstances when you think appropriate (this
> in general depends on the rest of the commands, though)
> c) 'precompile' a list of commands so you replace 'it' with the standard
> (whatever the player last mentioned), and only make these exceptions for
> single commands.
> d) Say 'player beware'

e. Not do the annoying, ambiguous, unreliable _it_ substitution in the
first place.

Andrew Plotkin

unread,
Jan 19, 1997, 3:00:00 AM1/19/97
to

Erik Max Francis (m...@alcyone.com) wrote:
> Jason Melancon wrote:

> > How about this idea, just out of the blue:
> >

> > In conversation, if someone brings up a new concept or something, we
> > say, for example, "What's that?" something else with "that," not
> > "it." Do we need a new word here as well?

> It's a good idea (making up a new word, that is), but does this sample
> script make sense?

> > EXAMINE DESK
> On top of the wooden desk sits a stapler.

> > GET THAT
> [the stapler]
> Taken.

> It certainly works, but does it sound right? It doesn't sound quite right
> to me.

It took my the duration of typing in my previous "that" post to get used
to it. :) I'm happy with it.

> The demonstrative pronouns are usually used to indicate something
> of the same type that was referred to, but a different instance of it:
> "The apple you gave me tasted awful, but _that_ one is fine."

I think there is an equally common English usage, which notionally
involves pointing, which is the usage I want to buy into. "Give me
*that*. <pointing at screwdriver>"

One thing I should explain is that I just finished re-reading a wacky
little math/logic book called _The Liar_, which is about the liar's
paradox ("This sentence is false.") And the authors analyze it by using a
very restricted English syntax, just to make life easier. The words are
"Max", "Claire", "has", "doesn't have", "the three of clubs" (and the
other 51 card names), "is", "isn't", "true", "this sentence", and "that
sentence <point at another sentence>".

So I've gone through about a week of reading "This sentence is false."
"That sentence <the previous one> is true." "This sentence is false and
that sentence <the previous one> is true." I'm heavily set in the idea of
"that" as a formal parameter which is set by demonstrative conventions,
namely, pointing -- or taking the last object mentioned by the computer.

> Still, in an interactive fiction context, where what the user types doesn't
> always represent a real English phrase (like NORTH), for our purposes I'm
> sure it would suit just fine.

Yep.

aul...@koala.scott.net

unread,
Jan 19, 1997, 3:00:00 AM1/19/97
to

Andrew Plotkin <erky...@netcom.com> wrote:

>You know, all I ever wanted was to be able to type "it" instead of "large
>purple snorkelwhacker" five times in a row...

And I would look at you funny if you ever typed all that even once. =)
(say, that noun sounds familiar...)

>I'm kind of dumbfounded by the claim that adding "it" to the environment
>was a mistake...

Well, you're right. It was kind of dumb of me to say that. Let me change
it a little to say that I think it was a mistake to ever allow the meaning
of "it" to be anything besides the last thing *I* referred to. That DOES
create more problems than it solves.

>And the current solution is very easy to get used to,
>*because* it's so simple-minded and consistent.

What is it that you are saying is the current solution? I haven't
noticed anything consistent, but that may just be me. If it were
established that the game should never change the meaning behind
the scenes, then that would be simple-minded and consistent, as you
say, and I would endorse it fully. Forgive me if I missed somewhere
that this is the standard practice now.

On the subject of endorsements, I really like the suggestion of using
"that" as opposed to "it" for objects that the game mentions. If no one
has implemented this in umpteen months months when my project gets off
the ground, I'll give it a go. Congratulations to the one who suggested
it for thinking of solutions rather than problems.

That is all,

Joe

aul...@koala.scott.net

unread,
Jan 19, 1997, 3:00:00 AM1/19/97
to

Dave Gatewood <gate...@mail.athensnet.com> wrote:

>I've noticed that (I believe for the first time) the latest Inform
>library resets the it object when the player enters a room

I'm going to have to go out on a limb and say I don't like that idea.
I doubt that will surprise anyone who has been reading this thread,
but I thought I'd make it official.

I'd be interested to hear from anyone who likes this feature.

Now, let's see... how would I feel if it reset the "that" object?
Hmmm.....

That is all,

Joe

Kenneth Albanowski

unread,
Jan 19, 1997, 3:00:00 AM1/19/97
to

In article <32E021D4...@alcyone.com>,

Erik Max Francis <m...@alcyone.com> wrote:
>
>It is unacceptable for the meaning of a pronoun to change in a chained
>command. If you're going to have the pronoun modification, then you're
>going to have to disable it during chained commands. Which makes yet
>another complication to the idea.
[...]

>The easier solution is to not use pronoun context changing at all.

Here's a dumb idea, then: clear the pronoun context whenever something
happens to make the pronoun in question ambiguous. (Note handwaving in the
vicinity of "something"). The net result would be:

> SEARCH DESK
You search the desk and find, oddly enough, a drawer.

> SIT ON IT
I'm sorry, but I don't know what you are referring to. Please clarify.

> SIT ON THE DESK
It's cold.

Exactly how the programmer should know when to reset itobj, as opposed to
setting it to something different, I'm really not sure. It seems that nearly
every command that produces an object (via some mechanism) should make the
itobj ambiguous, and only commands that refer to an already exstant object
(get, put, examine, etc.) without producing or revealing a new object should
let itobj (or whatever the local equivalent is) be set.

--
Kenneth Albanowski (kja...@kjahds.com)


Jason Melancon

unread,
Jan 20, 1997, 3:00:00 AM1/20/97
to

> > Jason Melancon wrote:
>
> > > How about this idea, just out of the blue:
> > >
> > > In conversation, if someone brings up a new concept or something, we
> > > say, for example, "What's that?" something else with "that," not
> > > "it." Do we need a new word here as well?

I think you all are right that it doesn't quite sound exactly right at
first. Let me put the idea in its original context, which I should
have done to begin with in my somewhat inarticulate post above.

The idea came thinking about the _Airplane_ joke that Nulldogma
recited. The joke doesn't quite hit home for me, because it seems a
little forced; usually I'd say, "What's that?" rather than, "What is
it?" if I wanted to trigger "It's a building whatever whatever, but
that's not important right now."

I think you'll hear the sense in the idea if you imagine the game as a
session of D&D, and you're discussing the next move with another
player. Consider this stereotypical moment.

Players: We'll push the button on the wall.

DM: A trapdoor opens below you, and you fall ten feet to a steeply
sloped stone floor, rolling you violently north. You continue north
through the dusty brick hallway, and come to a room filled with
cupboards and spiderwebs, and there's a small table that's about to
split down the middle from rot, with a flask of frothing black
liquid.

Players: Well, what should we do? Do we fool with that? [unsaid: or
continue on our way to the treasure room?]

In other words, about the same sense Andrew took it in. "That" is as
opposed to the "this" of continuing on your way or doing something
else.

If you think this makes any sense, fine. If not, fine. I'm not
really saying it's a good idea, I just thought you might find it
resolves your problem neatly, real English aside.

Erik Max Francis

unread,
Jan 20, 1997, 3:00:00 AM1/20/97