Literate programming is a powerful technique that helps expert programmers integrate code and documentation in a manner that assists human comprehension. To date, tools for litera...
We take the position that autonomous agents, when they interact with people, should be governed by the same principles that underlie human collaboration. These principles come fro...
Our research goal is to design systems that enable humans to teach tedious, repetitive, simple tasks to a computer. We propose here a learner/problem solver architecture for such ...
A software tool called EXPLAINER has been developed for helping programmers perform new tasks by exploring previously worked-out examples. EXPLAINER is based on cognitive principl...
Just as the order defined by generality over concepts allows concept induction to be performed without generalisation/specialisation operators, so too the order defined by set inc...