In 1950, Alan Turing devised an "imitation game" to determine if a computer system could be considered intelligent. The game consists of a human interogator sitting a computer screen and conversing, via a chat program, with another agent. The interogator must guess if the other agent is human or a computer. If it is not possible to tell them apart, the computer could be deamed to be intelligent. Turing predicted that in about 50 years, it would be possible to devise a computer system that would fool the interrogator. So far, Turing's prediction has not been fulfilled. However, even simple conversational agents have their uses. Online help system, either on the web or over the telephone, if combined with speech input and output, are becoming more widespread. Conversational agents can also be used to help people learning a new language practice their language skills. This project aims to a conversational agent. The effort can be divided into stages of increasing power (and difficulty). A simple conversational agent can be built as a pattern matcher that has canned responses to anticipated inputs. The next stage may have access to a knowledge base so that it is capable of answering questions. Question anwering can be enhanced by building in a problem solver. To be even more useful, the system can try to anticipate the requirements of the user if the system can build a model of the user. Underlying all of the above are the Natural Language Processing techniques to support syntactic and semantic analysis.