"Understanding Programming Languages" free ebook

I just now found this nice free ebook that gathers a vast set of concepts related to programming languages such as the different types of languages that exist (imperative, object oriented, etc.), syntax elements in languages, dev tools and environments, data types, control structures, polymorphism, exceptions, concurrency, etc. It is probably not an overall comprehensive book but it still makes an interesting read.