March 24, 2010

Language defines your world. But learning a new programming language can be a frustrating experience. Now Bruce Tate will take you on an incredible journey through seven popular programming languages, not only showing you the essential coolness of each language, but how to better learn new languages as well.

Tell your friends! Tweet this

Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages

Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you’ll go beyond the syntax—and beyond the 20-minute tutorial you’ll find someplace online. This book has an audacious goal: to present a meaningful exploration of seven languages within a single book. Rather than serve as a complete reference or installation guide, Seven Languages hits what’s essential and unique about each language. Moreover, this approach will help teach you how to grok new languages.

For each language, you’ll solve a nontrivial problem, using techniques that show off the language’s most important features. As the book proceeds, you’ll discover the strengths and weaknesses of the languages, while dissecting the process of learning languages quickly—for example, finding the typing and programming models, decision structures, and how you interact with them.

Among this group of seven, you’ll explore the most critical programming models of our time. Learn the dynamic typing that makes Ruby, Python, and Perl so flexible and compelling. Understand the underlying prototype system that’s at the heart of JavaScript. See how pattern matching in Prolog shaped the development of Scala and Erlang. Discover how pure functional programming in Haskell is different from the Lisp family of languages, including Clojure.

Explore the concurrency techniques that are quickly becoming the backbone of a new generation of Internet applications. Find out how to use Erlang’s let-it-crash philosophy for building fault-tolerant systems. Understand the actor model that drives concurrency design in Io and Scala. Learn how Clojure uses versioning to solve some of the most difficult concurrency problems.

It’s all here, all in one place. Use the concepts from one language to find creative solutions in another—or discover a language that may become one of your favorites.

Available now in beta from pragprog.com/titles/btlang

Coming Soon:

  • Cocoa Programming [in print April]
  • Test Driven Development in C: Building High Quality Embedded Software [in beta March]

Recently Released:

Thanks for your continued support,

Andy & Dave
www.PragProg.com