This chapter introduces programming language concepts. It discusses reasons for studying programming languages, including being able to express ideas more effectively and choose appropriate languages. It also covers language evaluation criteria like readability and cost. Major influences on language design are identified as computer architecture and programming methodologies. Implementation methods like compilation, interpretation and hybrid systems are also introduced.