I’ve recently been doing some work related to conversational agents that allow users to actually talk with computers and hold a reasonably fluid discussion on specific topics just as if the user was talking with a colleague. There’s a lot of good research going on in this area these days ...