In this course we are going to study some classic problems in the philosophy of language. The goal of the course is twofold: (i) teach you how formal tools can help us elaborate precise answers to traditional philosophical questions and (ii) strengthen your ability to recognise the philosophical assumptions underlying a certain framework and call them into question. The following units explain you how to make the most of this course and how you will be graded.