This course aims to provide students with an overview of the key areas which make up the field called Computational Linguistics, an understanding of the major challenges of the field as well as the major application areas for language processing techniques, and the skills to implement fundamental language processing algorithms. This course is dual listed with LIN 667LEC.