My conceptNet code isn't really designed to force an answer. Hal will only use the code if he needs to deduce the subject of your sentence and create a response based on that deduction. He's essentially teaching himself basic concepts.. Of course limited to the 'shorter than I would like' code and wikipedia. It's based off of the code that Watson used to win Jeopardy in the sense that if Hal knows about the subject of your sentence then he will respond, if not then he'll ignore it. Example from my Hal, with the auto learning ConceptNet code:
User: What is the super bowl?
Hal: The Super Bowl is the annual championship game of the National Football League (NFL)
If Hal doesn't have the information in his brain on the topic, he'll skip the conceptnet code entirely, learning and storing the topic for later research, making for an ever-evolving library of offline data accessible to Hal. Mine has currently researched and indexed over 5K topics.
It's all the perks of auto-learning with no drawbacks (Other than size, my limited concept extraction coding which needs expanded, and the very occasional pick up of bad information, which happens naturally anyway)
Try it. It's complicated and confusing, but my walk through should help.
Other than this, the vrFreewill does this to a very limited degree by storing topics, questions, and answers, using MIT's START AI Q/A System, although, the code seems to be wishy-washy, working really whenever it feels like it.