Fork me on GitHub

Project Notes

#378 Seven Languages in Seven Weeks

Book notes - Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages, by Bruce A. Tate. First published November 17, 2010.

Notes

The classic by Bruce Tate. In the early 2000’s there was distinct interest in rejecting the idea of a monoculture .. perhaps on the back of the 90’s battles between Microsoft with VB vs. IBM Java trying to convince everyone that there could only be one answer. It was an enlightened era, where perhaps we would be better served by selecting the language to best suit each specific situation, rather than choosing one language and trying to use it everywhere.

“Seven Languages in Seven Weeks” aimed to introduce a range of languages: more than just a “Hello World” in each language; enough to get the true flavor of the language.

cover

Contents

  • 1 Introduction
    • 1.1 Method to the Madness
    • 1.2 The Languages
    • 1.3 Buy This Book
    • 1.4 Don’t Buy This Book
    • 1.5 A Final Charge
  • 2 Ruby
    • 2.1 Quick History
    • 2.2 Day 1: Finding a Nanny
    • 2.3 Day 2: Floating Down from the Sky
    • 2.4 Day 3: Serious Change
    • 2.5 Wrapping Up Ruby
  • 3 Io
    • 3.1 Introducing Io
    • 3.2 Day 1: Skipping School, Hanging Out
    • 3.3 Day 2: The Sausage King
    • 3.4 Day 3: The Parade and Other Strange Places
    • 3.5 Wrapping Up lo
  • 4 Prolog
    • 4.1 About Prolog
    • 4.2 Day 1: An Excellent Driver
    • 4.3 Day 2: Fifteen Minutes to Wapner
    • 4.4 Day 3: Blowing Up Vegas
    • 4.5 Wrapping Up Prolog
  • 5 Scala
    • 5.1 About Scala
    • 5.2 Day 1: The Castle on the Hill
    • 5.3 Day 2: Clipping Bushes and Other New Tricks
    • 5.4 Day 3: Cutting Through the Fluff
    • 5.5 Wrapping Up Scala
  • 6 Erlang
    • 6.1 Introducing Erlang
    • 6.2 Day 1: Appearing Human
    • 6.3 Day 2: Changing Forms
    • 6.4 Day 3: The Red Pill
    • 6.5 Wrapping Up Erlang
  • 7 Clojure
    • 7.1 Introducing Clojure
    • 7.2 Day 1: Training Luke
    • 7.3 Day 2: Yoda and the Force
    • 7.4 Day 3: An Eye for Evil
    • 7.5 Wrapping Up Clojure
  • 8 Haskell
    • 8.1 Introducing Haskell
    • 8.2 Day 1: Logical
    • 8.3 Day 2: Spock’s Great Strength
    • 8.4 Day 3: The Mind Meld Wrapping Up Haskell
    • 8.5 Wrapping Up Haskell
    • See LCK#009 About Haskell
  • 9 Wrap-Up
    • 9.1 Programming Models
    • 9.2 Concurrency
    • 9.3 Programming Constructs
    • 9.4 Finding Your Voice

Source Code

Source code is available from the Pragmatic Programmers listing. Getting the sources:

wget https://media.pragprog.com/titles/btlang/code/btlang-code.zip
unzip btlang-code.zip
rm btlang-code.zip

Credits and References

About LCK#378 Books

This page is a web-friendly rendering of my project notes shared in the LittleCodingKata GitHub repository.

Project Source on GitHub Return to the LittleCodingKata Catalog
About LittleCodingKata

LittleCodingKata is my collection of programming exercises, research and code toys broadly spanning things that relate to programming and software development (languages, frameworks and tools).

These range from the trivial to the complex and serious. Many are inspired by existing work and I'll note credits and references where applicable. The focus is quite scattered, as I variously work on things new and important in the moment, or go back to revisit things from the past.

This is primarily a personal collection for my own edification and learning, but anyone who stumbles by is welcome to borrow, steal or reference the work here. And if you spot errors or issues I'd really appreciate some feedback - create an issue, send me an email or even send a pull-request.

Follow the Blog follow projects and notes as they are published in your favourite feed reader