ADRIFT currently counts any item within a container that is being carried by the PC as also "being held" by the PC. So if you are carrying a bag in which there is a ball and you just type GET BALL, ADRIFT will respond with "You are already carrying the ball." Therefore you have to type GET BALL FROM BAG in order to get the ball.
I personally think this is wrong, but Campbell doesn't.
The incongruity is that if you are WEARING the bag (which I would count as also being "carried") and type GET BALL, this time the TAKE OBJECT FROM OBJECT (LAZY) task will execute and you can get the ball without typing GET BALL FROM BAG.
This doesn't make sense and is NOT right, despite what Campbell says. I would therefore like to propose a compromise and ask for an option that would allow the author to chose whether or not an object within a container that is being carried is regarded as being held.