If I want a phrase to return a literal description, how can I convince Inform that I know what I’m doing?
Admittedly, returning a literal description is almost never a useful thing to do. But since descriptions can be passed as arguments to other phrases, it could be helpful e.g. to make a phrase which returns one of two descriptions depending on other conditions.
For instance:
To decide which description of objects is current foobar: decide on (bletch things in the baz which are plugh).
This gives a problem message, saying that a description was found where a value was expected.
Assuming you mean a “description of objects,” one possible workaround is to generate a list of things matching that description, and then work with the list.
The Kitchen is a room.
The cabinet is an open openable container in the Kitchen.
The fridge is a closed openable container in the Kitchen.
To decide which description of objects is quote-description (D - description of objects): (- {D} -).
To decide which description of objects is current foobar:
decide on quote-description all open containers.
Every turn:
let D be current foobar;
say "D is [the list of D], which is [number of D] things.";