need help with Inform code

The first three lines of Inform code work fine. The fourth does not.

Instead of telling someone about something, try asking the noun about it.
Instead of answering the noun that something, try asking the noun about it.
Instead of showing something to someone, try giving the noun to the second noun.
Instead of asking someone about something, try talking to the noun about it.

Problem. You wrote ‘try talking to the noun about it’ , but ‘talking to the noun about it’ is not an action I can try. This looks as if it might be because it contains something of the wrong kind. My best try involved seeing if ‘the noun about it’ could be an object, which might have made sense, but it turned out to be nothing.

Even after reading the text of the problem, I fail to understand why the fourth statement fails and the other three are fine.

The syntax of this language has got to be one of the must frustrating things ever. Any ideas?

Your instruction “try talking to the noun about it” doesn’t match any built-in action in Inform. The built-in “talking” actions are:
answering it that
telling it about
asking it about
asking it for

You could define a new “talking to it about” action if you wanted to. But what would be the point of redirecting “asking it about” to “talking to it about”?

I’m surprised you can use “it” in that way rather than “the topic understood.”

Yes, I agree it’s surprising, though it’s used in several Recipe Book examples. It seems that it only works for actions which take a topic instead of a second noun (I count 5 of these in the Standard Rules).

I guess these actions just have peculiar syntax. This is getting off-topic, but here’s another anomaly: if I define a new action, e.g. considering, applying to one topic, then an “Instead of considering something” rule won’t work. (It will compile, but won’t ever fire, since the object of a consider action isn’t a thing.) But as seen in the OP, an “Instead of asking someone about something” rule does work. So it seems that “something” is interpreted more inclusively for the second argument than for the first, matching topics as well as things.

I believe you need to match the action name you defined. If you name the action “considering” you can’t say “Instead of considering something”. You can say “Understand “consider [something]” as considering” to force the player to include a noun. Then the “something” is the noun of the action (as long as you defined “considering is an action applying to one thing.”)

Right, I get that. If I write

Understand "consider [text]" as considering.

then I don’t expect a “Instead of considering something:” rule ever to work, and it doesn’t.

But if I define, say

Talking to it about is an action applying to one thing and one topic.
Understand "talk to [something] about [text]" as talking to it about.

then an “Instead of talking to someone about something:” rule will work.

Instead of talking to someone about something, try jumping.

(Apparently Inform doesn’t distinguish talking to someone about something from talking to someone about.)

Conversation is such a weird thing with difficult actions. Have you perhaps looked at some extensions such as Eric Eve’s conversation suite? He’s already solved a lot of the inherent problems and provides new verb actions. Even if you don’t use it, perhaps examining his documentation and code might give you some ideas of the steps involved. One of the things he does is make a type of thing that is a discussion topic. They remain offstage but can still be referred to and can have “understand” synonyms associated with them and are “handled” like objects so you don’t have to get in the muck of text and “topic understood”.