By Bruce Tate

You may still research a programming language each year, as urged via The Pragmatic Programmer. but when one in keeping with yr is sweet, how approximately Seven Languages in Seven Weeks? during this ebook you will get a hands-on travel of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. even if your favourite language is on that checklist, you are going to increase your standpoint of programming via interpreting those languages side-by-side. you are going to study whatever new from each one, and better of all, you will the way to study a language quickly.

Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by means of Bruce A. Tate, you will transcend the syntax-and past the 20-minute educational you will find somewhere on-line. This ebook has an audacious target: to provide a significant exploration of 7 languages inside of a unmarried ebook. instead of function an entire reference or deploy advisor, Seven Languages hits what is crucial and detailed approximately every one language. additionally, this technique may also help educate you the way to grok new languages.

For each one language, you are going to remedy a nontrivial challenge, utilizing options that blow their own horns the language's most crucial positive factors. because the ebook proceeds, you will discover the strengths and weaknesses of the languages, whereas dissecting the method of studying languages quickly--for instance, discovering the typing and programming types, choice constructions, and the way you have interaction with them.

Among this workforce of 7, you are going to discover the main severe programming versions of our time. research the dynamic typing that makes Ruby, Python, and Perl so versatile and compelling. comprehend the underlying prototype procedure that is on the middle of JavaScript. See how development matching in Prolog formed the improvement of Scala and Erlang. detect how natural sensible programming in Haskell isn't like the Lisp relatives of languages, together with Clojure.

Explore the concurrency options which are quick changing into the spine of a brand new new release of web functions. tips to use Erlang's let-it-crash philosophy for construction fault-tolerant platforms. comprehend the actor version that drives concurrency layout in Io and Scala. find out how Clojure makes use of versioning to resolve one of the most tough concurrency problems.

It's all right here, multi functional position. Use the ideas from one language to discover inventive recommendations in another-or find a language which could turn into certainly one of your favorites.

Show description

Read Online or Download Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages (Pragmatic Programmers) PDF

Similar Programming books

Embedded C

For those that are approximately to put in writing their first embedded application - or were suffering to profit approximately this crucial region - this ebook will retailer weeks of attempt.

Cocoa Design Patterns

“Next time a few child indicates up at my door inquiring for a code evaluate, this is often the publication that i'm going to throw at him. ”   –Aaron Hillegass, founding father of great Nerd Ranch, Inc. , and writer of Cocoa Programming for Mac OS X   Unlocking the secrets and techniques of Cocoa and Its Object-Oriented Frameworks   Mac and iPhone builders are usually beaten by means of the breadth and class of the Cocoa frameworks.

C++ Primer (5th Edition)

Bestselling Programming educational and Reference thoroughly Rewritten for the recent C++11 regular   absolutely up-to-date and recast for the newly published C++11 regular, this authoritative and accomplished advent to C++ can assist you to benefit the language speedy, and to take advantage of it in smooth, powerful methods.

Operating System Concepts

Preserve velocity with the fast-developing global of working platforms Open-source working structures, digital machines, and clustered computing are one of the prime fields of working platforms and networking which are quickly altering. With monstrous revisions and organizational adjustments, Silberschatz, Galvin, and Gagne’s working approach innovations, 8th variation continues to be as present and appropriate as ever, supporting you grasp the elemental strategies of working platforms whereas getting ready your self for today’s rising advancements.

Extra resources for Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages (Pragmatic Programmers)

Show sample text content

My young children won't ever comprehend why that front used to be groundbreaking stuff. this present day, you’re going to event somewhat of the magic that makes Ruby click on. You’ll discover ways to use the elemental construction blocks of gadgets, collections, and periods. You’ll additionally research the fundamentals of the code block. Open up your brain to a bit magic. Defining capabilities in contrast to Java and C#, you don’t need to construct an entire classification to outline a functionality. you could outline a functionality correct within the console: >> def tell_the_truth >> real >> finish each functionality returns anything. in case you don't specify an particular go back, the functionality will go back the price of the final expression that’s processed ahead of exiting. Like every thing else, this functionality is an item. Later, we’ll paintings on innovations to move capabilities as parameters to different services. Arrays Arrays are Ruby’s workhorse ordered assortment. Ruby 1. nine introduces ordered hashes too, yet ordinarily, arrays are Ruby’s fundamental ordered assortment. have a look: >> animals = ['lions', 'tigers', 'bears'] => ["lions", "tigers", "bears"] >> places animals lions tigers bears => nil >> animals[0] => "lions" >> animals[2] => "bears" >> animals[10] => nil >> animals[-1] => "bears" >> animals[-2] => "tigers" >> animals[0.. 1] => ['lions', 'tigers'] >> (0.. 1). type => variety you can find that Ruby collections offers you a few freedom. for those who entry any undefined array aspect, Ruby will easily go back nil. additionally, you will locate a few positive factors that don’t make arrays extra robust yet simply cause them to more straightforward to exploit. animals[-1] lower back the 1st point from the top, animals[-2] lower back the second one, etc. those positive aspects are referred to as syntactic sugar, an extra characteristic for comfort. The animals[0.. 1] expression may perhaps seem like syntactic sugar, yet it’s now not. 0.. 1 is admittedly a spread, which means all numbers from zero to at least one, inclusive. Arrays can carry different forms besides: >> a[0] = zero NameError: undefined neighborhood variable or procedure `a' for main:Object from (irb):23 >> a = [] => [] Oops. i attempted to exploit an array earlier than it used to be an array. That blunders provides a clue to the way in which Ruby arrays and hashes paintings. [] is really a style on Array: >> [1]. category => Array >> [1]. tools. contain? ('[]') => real >># use [1]. tools. contain? (:[]) on ruby 1. nine So, [] and []= are only syntactic sugar to permit entry to an array. to do that correct, i have to placed an empty array into it first, after which i will mess around with it a few: >> a[0] = 'zero' => "zero" >> a[1] = 1 => 1 >> a[2] = ['two', 'things'] => ["two", "things"] >> a => ["zero", 1, ["two", "things"]] Arrays don’t have to be homogeneous. >> a = [[1, 2, 3], [10, 20, 30], [40, 50, 60]] => [[1, 2, 3], [10, 20, 30], [40, 50, 60]] >> a[0][0] => 1 >> a[1][2] => 30 And multidimensional arrays are only arrays of arrays. >> a = [1] => [1] >> a. push(1) => [1, 1] >> a = [1] => [1] >> a. push(2) => [1, 2] >> a.

Rated 4.95 of 5 – based on 19 votes