Why Undergraduates Should Learn the Principles of Programming Languages
Undergraduate students obtain important knowledge and skills by studying the pragmatics of programming in multiple languages and the principles underlying programming language design and implementation. These topics strengthen students' grasp of the power of computation, help students choose the most appropriate programming model and language for a given problem, and improve their design skills. Understanding programming languages thus helps students in ways vital to many career path Programming languages are the medium through which the authors describe computations. More specifically, they use the model provided by a programming language to discuss concepts, formulate algorithms, and reason about problem solutions.