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

0
(0)

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

作者:BruceA.Tate

出版社:PragmaticBookshelf

副标题:APragmaticGuidetoLearningProgrammingLanguages

出版年:2010-10-10

页数:328

定价:USD34.95

装帧:Paperback

ISBN:9781934356593

内容简介
······

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.

作者简介
······

(Biography)

I started in this industry back in 1985, as a co-op with IBM in Austin. I joined IBM full time in 1987, and spent 13 years with them. I later left to join a startup, and ultimately started my own business where I focus on helping customers build software with lightweight technologies.

I've been writing technical books for more than 10 years now, with the last 7 coming since 2000. I write for the love of the craft.

Others have told me that my fundamental strength as an author is the ability to quickly recognize emerging trends. I do tend to find emerging frameworks just as they become popular, and that skill is a mixed blessing that–combined with my complete lack of political tact–gets me in trouble sometimes, as it did with Bitter Java (Java is too hard), Beyond Java (Java is not going to last forever), and most recently, From Java to Ruby: Things Every Manager should Know (there's a better language for some problems, but our managers don't know it yet.)

My promise to you is this: I will always seek to find better ways to do things, and will work hard to tell you the truth, without regard for any notion of political correctness. Thanks for reading.

目录
······

Changes 9

Beta 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Foreword 10

1 Introduction 13

1.1 Method to the Madness . . . . . . . . . . . . . . . . . . 13

1.2 The Languages . . . . . . . . . . . . . . . . . . . . . . . 15

1.3 Buy this Book… . . . . . . . . . . . . . . . . . . . . . . . 17

1.4 Don’t Buy this Book… . . . . . . . . . . . . . . . . . . . 18

1.5 Acknowledgements . . . . . . . . . . . . . . . . . . . . . 21

1.6 A final charge . . . . . . . . . . . . . . . . . . . . . . . . 22

2 Ruby 23

2.1 Quick history . . . . . . . . . . . . . . . . . . . . . . . . 24

2.2 Day 1: Finding a nanny . . . . . . . . . . . . . . . . . . 25

2.3 Day 2: Floating down from the sky . . . . . . . . . . . . 33

2.4 Day 3: Serious change . . . . . . . . . . . . . . . . . . . 45

2.5 Wrapping Up Ruby . . . . . . . . . . . . . . . . . . . . . 52

3 Io 56

3.1 Io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3.2 Day 1: Skipping school, hanging out . . . . . . . . . . . 57

3.3 Day 2: The Sausage King . . . . . . . . . . . . . . . . . 68

3.4 Day 3: The Parade and Other Strange Places . . . . . . 75

3.5 Wrapping Up Io . . . . . . . . . . . . . . . . . . . . . . . 84

4 Prolog 88

4.1 About Prolog . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.2 Day 1. An excellent driver. . . . . . . . . . . . . . . . . . 89

4.3 Day 2: Fifteen Minutes to Wapner . . . . . . . . . . . . 101

4.4 Day 3: Blowing up Vegas . . . . . . . . . . . . . . . . . . 112

4.5 Wrapping Up . . . . . . . . . . . . . . . . . . . . . . . . . 123

5 Scala 127

5.1 About Scala . . . . . . . . . . . . . . . . . . . . . . . . . 127

5.2 Day 1: The Castle on the Hill . . . . . . . . . . . . . . . 131

5.3 Day 2: Clipping bushes and other new tricks . . . . . . 146

5.4 Day 3: Cutting through the fluff . . . . . . . . . . . . . 159

5.5 Wrapping Up Scala . . . . . . . . . . . . . . . . . . . . . 167

6 Erlang 172

6.1 Introducing Erlang . . . . . . . . . . . . . . . . . . . . . 172

6.2 Day 1: Appearing Human . . . . . . . . . . . . . . . . . 176

6.3 Day 2: Changing Forms . . . . . . . . . . . . . . . . . . 186

6.4 Day 3: The Red Pill . . . . . . . . . . . . . . . . . . . . . 197

6.5 Wrapping Up Erlang . . . . . . . . . . . . . . . . . . . . 208

7 Clojure 212

7.1 Coming Soon… . . . . . . . . . . . . . . . . . . . . . . . 212

8 Haskell 213

8.1 Coming Soon… . . . . . . . . . . . . . . . . . . . . . . . 213

9 Wrap up 214

9.1 Coming Soon… . . . . . . . . . . . . . . . . . . . . . . . 214

A Bibliography 215

Index 216

评论 ······

每年学一门新语言确实是好主意。读过这本书之后,就提前完成7年的计划啦

计算机语言的比较语言学,挺有意思的。语言支撑思维。

想法确实很好,执行上差了点,下一版估计会很不错。Scala这几年大行其道不是偶然啊。Java虽然被吐槽了十年,JVM却越来越主宰互联网了。看完之后最想认真学一下的,一是Scala,二是Haskell。Clojure的Syntax对于没有Lisp背景的人来说还是稍微难接受了点。本科的时候经常听到的说法是,语言不重要,老师们尤其喜欢讲这句话。后来无论是看Joel,Paul Graham还是这本7语言,…

看了Clojure和Ruby两章,感觉不错,值得一读。

点击星号评分!

平均分 0 / 5. 投票数: 0

还没有投票!请为他投一票。

推荐阅读

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册