Comparing and Assessing Programming languages is a collection of different essays and papers by various important people of the time, including Alan Feuer, Brian Kernighan, Narain Gehani, and Niklaus Wirth. Some of them are a bit older than when the book itself was published, while some are quite recent (as of '84) and serve to include coverage on Ada, which had only been out a few years at that point.
What makes this book a fun and interesting read for programming language folks is that it offers up a lot of different viewpoints on Pascal, Ada, and C. Some of the papers cover a single language, while others directly compare two or all three of them, but in most cases the content shifts with the authors agenda, and all of the analyses done provide a really interesting look at what made each of these languages unique, including their strong and weak points.
In particular, it was interesting to see how much disdain C had for it's weak typing and ability to code recklessly. I also found it amusing that some of the authors pointed out that the authors of C code at that time generally tended to write in a way that is terse and unreadable, a tradition that has yet to cease. C was also seen as too simple at the time, as K&R C was lacking a lot of features that wouldn't get added later. There was also a tendency to consider it too small in some cases because things like IO were not part of the base language, but instead many useful features had to be imported.
The Pascal and Ada coverage are equally as interesting. I found the downsides presented by some of the authors to be quite telling. The issues with arrays is the most problematic: arrays of different sizes are considered to be different types. This disallows general sorting routines and things of that nature, but it also makes it hard to work with strings because if you're working with char arrays of different sizes, the only way to, say, write a procedure to print these different-sized strings is to pad them with blank space.
With Ada, being so new meant that the tooling and compilers were not just quite there yet, and so it was thought that Ada was too big of a language for all that it was trying to do. Ada was quite head of its time, including features like generic, concurrency models, assertions, a strong emphasis on type safety, and packages, which were modules to group different constants, procedures, and types. Ada was definitely considered more than just a better Pascal at that time. Some of the more interesting parts discussing Ada were about how complex some of the new features might in order to use them, like overloading.
Some of the articles in this book are actually quite famous, like Brian Kernighan's "Why Pascal Is Not My Favorite Programming Language", Niklaus Wirth's "Assessment Of The Programming Language Pascal", and Alan Feuer and Narain Gehanhi's "A Comparison Of Programming Languages: C & Pascal". This was definitely a hidden treasure of a book for me, and I highly recommend it to anyone who likes retro programming texts and is interested in seeing what the general consensus was on these languages.