Seven weeks seven languages: Understanding multiple Programming Paradigms PDF

Source: Internet
Author: User

: Network Disk Download

about the author· · · · · ·

Author Profile:

Bruce A. Tate rapidred, president of the company, mainly advises on the development of lightweight Ruby. He has worked for IBM and served as a client Solutions director and CTO for several companies. There are more than 10 books, including Better, Faster, and lighter Java, which won the Jolt Award.

Translator Profile:

Dai Wei Gen Y Otaku, the Chinese Academy of Sciences Automation is the Doctor, Love machine learning and computer vision. Programming likes C #, Ruby, Haskell, and Java.

Bai Ming Neusoft, a development department technical director, has many years of experience in carrier-grade software development, Senior C programmer, Common Lisp, Python and other minority languages also have a strong interest in open source software, has contributed to Lcut, Cbehave and other tools framework , like to write blog http://bigwhite.blogbus.com), seven years of cultivation, still tireless.

Dacheng Wanfang Data Digital Publishing Division architect,. NET developers.

Catalog/Directory

Chapter 1th Introduction 1
1.1 Do not take the unusual road 1
1.2 Language 2
1.3 Who should buy this book 4
1.3.1 Learn how to learn 4
1.3.2 Heroes 4
1.4 Who should not buy this book 5
1.4.1 Transcendence Grammar 5
1.4.2 is not a installation guide 6
1.4.3 is not a programming reference 6
1.4.4 Strict Supervision 6
1.5 Last hit 7
2nd Chapter Ruby 8
2.1 A Brief history of Ruby 9
2.2 First day: Find a babysitter 10
2.2.1 Quick Start 10
2.2.2 Executing ruby 10 from the command line
2.2.3 Ruby's programming Model 11
2.2.4 Judgment 12
2.2.5 Duck Type 15
2.2.6 what we learned in the first day 16
2.2.7 First day Study 16
2.3 Day two: Falling from the Sky 17
2.3.1 Defining a function 17
2.3.2 Array 17
2.3.3 Hash Table 19
2.3.4 code block and yield 20
2.3.5 Defining Class 22
2.3.6 writing Mixin 25
2.3.7 module, Enumerable, and collection 26
2.3.8 What we learned the next day 27
2.3.9 Next day Study 28
2.4 Third day: Major changes 28
2.4.1 Opening Class 29
2.4.2 using method_missing 30
2.4.3 Module 31
2.4.4 what we learned in the third day 35
2.4.5 Third Day Study 35
2.5 Strike 35
2.5.1 Core Advantage 35
2.5.2 Deficiencies 37
2.5.3 Final Thinking 37
3rd Io 38
3.1 IO Introduction 38
3.2 First day: Play truant, relax 39
3.2.1 Opening remarks 39
3.2.2 objects, prototypes, and inheritance 40
3.2.3 Method 43
3.2.4 Lists and Mappings 44
3.2.5 true, False, nil, and Singleton 46
3.2.6 Steve DeKorte Interview 48
3.2.7 what we learned in the first day 49
3.2.8 First day Study 50
3.3 Day two: Sausage King 50
3.3.1 Conditions and Loops 51
3.3.2 Operator 52
3.3.3 Message 54
3.3.4 Reflex 56
3.3.5 what we learned the next day 57
3.3.6 Next day Study 57
3.4 Third day: Floats parade and all kinds of wonderful experiences 58
3.4.1 Domain Specific Language 58
3.4.2 IO method_missing 60
3.4.3 Concurrency 62
3.4.4 What we learned in the third day 64
3.4.5 Third Day Study 64
3.5 Strike 65
3.5.1 Core Advantage 65
3.5.2 Deficiencies 66
3.5.3 Final Thinking 66
4th Chapter Prolog 67
4.1 About Prolog 68
4.2 First day: an excellent driver 68
4.2.1 Basic Overview 68
4.2.2 Basic inferences and Variables 69
4.2.3 Fill in the blanks 70
4.2.4 Oneness, part 73
4.2.5 Prolog 75 in practical applications
4.2.6 what we learned in the first day 77
4.2.7 First day Study 77
4.3 second day: from Judge Wapuna.
15 min 78
4.3.1 recursion 78
4.3.2 Lists and tuples 79
4.3.3 list and mathematical operations 82
4.3.4 using rule 83 in two directions
4.3.5 What we learned the next day 86
4.3.6 Next day Study 87
4.4 Third Day: The outbreak of Vegas 87
4.4.1 Solving Sudoku Problem 87
4.4.28 Queens Question 91
4.4.3 what we learned in the third day 96
4.4.4 Third Day Study 96
4.5 Strike 96
4.5.1 Core Advantage 97
4.5.2 Deficiencies 97
4.5.3 Final Thinking 98
Chapter 5th Scala 99
5.1 About Scala 99
5.1.1 Close relationship with Java 100
5.1.2 No Blind worship 100
5.1.3 Martin Odersky Interview 100
5.1.4 functional Programming and Concurrency 101
5.2 First day: Castle on the Hill 102
5.2.1 Scala Type 102
5.2.2 Expressions and Conditions 103
5.2.3 Cycle 105
5.2.4 Range and tuple 107
5.2.5 classes in Scala 109
5.2.6 Extension Class 111
5.2.7 what we learned in the first day 113
5.2.8 First day Study 114
5.3 Day Two: pruning bushes and other new tricks 114
5.3.1 vs. var and Val 115
5.3.2 Set of 115
5.3.3 Set and Function 119
5.3.4 What we learned the next day. 124
5.3.5 Next day Study 124
5.4 Third day: Cut down fluff 125
5.4.1 XML 125
5.4.2 Pattern Matching 126
5.4.3 Concurrency 128
5.4.4 in real-world concurrency 129
5.4.5 what we learned in the third day 132
5.4.6 Third Day Study 132
5.5 Strike 133
5.5.1 Core Advantage 133
5.5.2 Deficiencies 134
5.5.3 Final Thinking 135
6th Erlang 136
6.1 Erlang Introduction 136
6.1.1 for concurrent Tailoring 137
Interview with Dr. 6.1.2 Joe Armstrong 138
6.2 First day: Appearing as a normal person 139
6.2.1 Novice Road 140
6.2.2 annotations, variables, and expressions 140
6.2.3 atoms, lists, and tuples 141
6.2.4 Pattern Matching 142
6.2.5 function 144
6.2.6 what we learned in the first day 147
6.2.7 First day Study 147
6.3 Day Two: Change structure 148
6.3.1 Control Structure 148
6.3.2 Anonymous function 150
6.3.3 list and higher-order functions 150
Some advanced concepts of the 6.3.4 list 153
6.3.5 What we learned the next day 156
6.3.6 Next day Study 157
6.4 Third day: Red pill 157
6.4.1 Basic Concurrency Primitives 157
6.4.2 Synchronizing messages 160
6.4.3 Linking processes for reliability 162
6.4.4 What we learned in the third day 167
6.4.5 Third Day Study 167
6.5 Strike 167
6.5.1 Core Advantage 168
6.5.2 Deficiencies 169
6.5.3 Final Thinking 169
7th Chapter Clojure 170
7.1 Clojure Primer 170
7.1.1 Everything is Lisp 170
7.1.2 JVM 171
7.1.3 for concurrent Update 171
7.2 First day: Training Luke 172
7.2.1 Calling basic function 172
7.2.2 String and character 174
7.2.3 Boolean values and Expressions 175
7.2.4 lists, mapping tables, collections, and
Vector 176
7.2.5 Defining a function 179
7.2.6 Binding 180
7.2.7 anonymous function 182
Interview with 7.2.8 Rich Hickey 183
7.2.9 what we learned in the first day 184
7.2.10 First day Study 185
7.3 Day two: Yoda and Force 185
7.3.1 recursion with loops and recur 185
7.3.2 Sequence 186
7.3.3 Delay Calculation 189
7.3.4 Defrecord and Protocol 191
7.3.5 Macro 193
7.3.6 What we learned the next day 194
7.3.7 Next day Study 195
7.4 Day three: A glimpse of the devil 195
7.4.1 references and transactional memory 196
7.4.2 using Atomic 197
7.4.3 using proxies 198
7.4.4 Future 200
7.4.5, what's worse, 200?
7.4.6 what we learned in the third day 201
7.4.7 Third Day Study 201
7.5 Strike 201
7.5.1 Lisp Paradox 202
7.5.2 Core Advantage 202
7.5.3 Deficiencies 203
7.5.4 Final Thinking 204
Chapter 8th Haskell 205
8.1 Haskell Introduction 205
8.2 First day: Logic 206
8.2.1 expressions and Basic Types 206
8.2.2 Function 208
8.2.3 Tuples and Listings 211
8.2.4 Generating List 214
8.2.5 Philip Wadler Interview 217
8.2.6 what we learned in the first day 218
8.2.7 First day Study 218
8.3 Day two: The extraordinary power of Spock 218
8.3.1 Higher order function 219
8.3.2 Partial application function and Curry 220
8.3.3 Lazy Evaluation 221
8.3.4 Simon Peyton-jones Interview 223
8.3.5 What we learned the next day 224
8.3.6 Next day Study 225
8.4 Day Three: Soul Fusion 226
8.4.1 class and type 226
8.4.2 Monad 231
8.4.3 What we learned in the third day 236
8.4.4 Third Day Study 237
8.5 Strike 237
8.5.1 Core Advantage 237
8.5.2 Deficiencies 238
8.5.3 Final Thinking 239
9th Chapter Curtain 240
9.1 Programming Model 240
9.1.1 Object-oriented (Ruby, Scala) 241
9.1.2 prototype Programming (IO) 241
9.1.3 Constraints-Logic programming (PROLOG) 241
9.1.4 Functional Programming (Scala, Erlang,
Clojure, Haskell) 241
9.1.5 Paradigm Evolution Road 242
9.2 Concurrent 242
9.2.1 Control variable State 243
Actor 243 in 9.2.2 Io, Erlang, and Scala
9.2.3 Future 243
9.2.4 transaction-type memory 243
9.3 Programming Structure 244
9.3.1 List Resolution 244
9.3.2 Monad 244
9.3.3 Matching 245
9.3.4 1246
9.4 Find your Melody 246
Appendix Bibliography 247

: Network Disk Download

Seven weeks seven languages: Understanding multiple Programming Paradigms PDF

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.