MegaHAL is a 'conversation simulator' that learns as you talk to it. MegaHAL differs from conversation simulators such as Eliza in that it uses
a Markov Model to learn how to hold a conversation. It is possible to
teach MegaHAL to talk about new topic
This is awesome. Difficult to compile, but I was very impressed with its abilities.