The fifth edition of 'Concepts of Programming Languages' by Robert Sebesta continues the approach that has made it the undisputed market leader. It describes fundamental concepts of programming languages by presenting design issues of the various language constructs, examining the design choices for these constructs in a few common languages, and critically comparing the design alternatives. This is an ideal text for students taking a comparative programming languages course: it allows those with the ability to program to learn how to choose appropriate languages for certain tasks, increase their abilities to learn new languages, and understand the significance of implementation. This new edition is updated to include a new chapter covering parsing, new material on JavaScript, and updated material on Java1.3.