Jump over and similar verb phrases

I’ve been poking at this in Workbench with adv3lite, and wondering if ‘over’ needs some special handling like other prepositions in grammar.t. But then I noticed you see the same behavior in a drop action if you modify the VerbRule like,

VerbRule(Drop)
    ('put' | 'drop' | 'put' 'down' | 'set' 'down') multiDobj   //  <-- adding 'put'
    | ('put' | 'set') multiDobj 'down'
    : VerbProduction
    action = Drop
    verbPhrase = 'drop/dropping (what)'
    missingQ = 'what do you want to drop'

The Starting Location

Add your description here.

You can see a cow here.

>put down

You see no down here.

>put

What do you want to drop?

>

So short of messing with prepositions, what if we give a hint to the parser, like @Harlock said in the original post, but just in one rule?

VerbRule(JumpOver)
    ([badness 500] 'jump' | 'jump' 'over') singleDobj
    : VerbProduction
    action = JumpOver
    verbPhrase = 'jump/jumping (over what)'
    missingQ = 'what do you want to jump over'
    dobjReply = singleNoun

>jump

You jump on the spot, fruitlessly.

>jump over

What do you want to jump over?

>jump over cow

It is pointless to try to jump over the cow.

>jump cow

It is pointless to try to jump over the cow.

>jump over

What do you want to jump over?

>cow

It is pointless to try to jump over the cow.
>

If this is actually what’s needed, honestly I’m surprised it hasn’t been done before? Which makes me think I’m not correct ;), but it does seem to work?

However I don’t think this fully answers the original question about a point action, since we still end up with more than one jumping rule. But it seems like multiple VerbRules is how things are done in grammar.t anyway.

3 Likes