Chris & Kevin, I agree that what it is going to take is a dynamic system rather than an elaborate but ultimately brittle database and series of routines. In particular, I am thinking of the Sociobiology work of Edward O. Wilson of Harvard and new brain mapping techniques like PET reporter gene/PET reporter probe which actually "pinpoints and follows the activity of specific genes." Rather than have to invent a new computer based brain we will be able to model it after our own brain functions. To carry the analogy further, what we need is a program (brain) that has all of the functions built prior to any content (as with a baby) that grows as it learns (content is added). As mentioned earlier, huge databases of knowledge already exist. What we don't have yet is a program sophisticated enough to deal with all that information. I wonder if we even have a program that can handle the complexities of a First grade reader? "To have IT start a conversation, and lead it, rather than just reacting" An approach I am experimenting with is a program that self programs by asking the meanings of words and/or phrases it does not understand. Also, when it tries a new construct (response sentence) it can receive feedback as to whether it is correct. In terms of O(N) notation a program can quickly become overwelmed with all the possibilities. Hum, maybe what we need is one of those shared computing projects over the net. Then we would have near unlimited computing power, storage, and RAM. Cool. - Pete