blairconrad's review against another edition

Go to review page

3.0

Disclaimer: I read the book, without doing the homework.

It's okay. A decent very low-level introduction to a few programming languages. As I was someone who was wondering "what's this 'Clojure' about" and so on, it met my basic need. I appreciate getting a taste of all the languages without all the hype - Tate went to pains to balance the good and the bad points of each language.

Unfortunately, the book was poorly made. The editing was lax, from the misspelling of "Leia" (a small thing, but distracting) to what appeared to be errors in syntax from one example to another (disastrous, if you're introducing someone to a language). I also found that Tate spent too much time on basic operations (I don't need to see a multi-page treatment of addition for _every_ language) and too little on some of the difficult concepts that set each language apart (e.g. monads).

So, for a _very_ quick survey of a language, not bad. But flawed.

logantea's review against another edition

Go to review page

1.0

A really cool idea let down by poor execution. There's a lot to be said for exposing yourself to new programming paradigms, and I think the author did a solid job picking languages that really help you narrow into specific ideas (Io, Prolog, and Haskell being particularly single-minded in their focus) but I think a person would be better off spending some time with these languages on their own.

The author often spends too long on language basics and then needs to rush through the important complexities. He also lets his personal preferences (such as hatred of explicit types) color the writing and code examples of the book, which completely ruins chapters like Haskell where he leaves off type definitions, making his code much harder to read.

He also has a writing style that is very exclusionary and patronizing. I can't count the amount of times he described new (and potentially confusing) concepts/code as "simple", "easy", or "obvious". It's very frustrating to be struggling to understand a new concept while the author is telling you how simple it is.

Long story short, do a worthwhile exercise like this on your own and skip this book.

axel_prieto's review against another edition

Go to review page

5.0

Fun for nerds.

ddrake's review against another edition

Go to review page

4.0

A typical introduction to a programming language starts with syntax. "Here's how you do an if/then"; "here's how to write a function" and I just don't care. I always think, yeah yeah yeah, but what are the ideas? How can I express things with this? What kinds of programming tasks are easy with this language? Which are hard?

This book introduces seven languages in a way that's more in line with the latter approach, and I really enjoyed it. This approach means that even though this book is ancient (for a technical book), and some of the things in it are super outdated, it's still a great read.

dozens's review against another edition

Go to review page

Did not finish.

Denver-devs bookclub selection. Got busy and dropped off.

I love the idea of this book though, and really enjoyed the exposure to different paradigms. I'd love to revisit it and finish it up some time.

hlame's review

Go to review page

It's a frustrating book that I'm not sure I would recommend to anyone. If you are interested in any of the languages covered you'd do better looking for tutorials and blog posts and videos online as this book won't give you enough of what you want.

A major frustration, that the authors can't really be blamed for, is that having been written in 2014 using languages that were still early in development much of the content is now mildly broken or completely irrelevant for a reader in 2018. The Elm chapter in particular focuses on a feature removed from the current version making the chapter almost entirely useless.

The authors say in the introduction that there won't be much time for each language and you'll have to do a lot of work for yourself to get the most out of each chapter. Even with that caveat I still feel like they could have done a better job of explaining what they wanted us to get out of these languages. The final chapter, "Wrapping up", does an ok job of this, but it would have been better to have this mixed into the chapter for each language rather than at the end where it's too late for a frustrated reader.

One good thing however is that many chapters include interviews with the language creators exploring why they created the languages, or their favourite features. A full book of these would be excellent, but that's not what we have here.
More...