首页 > Erlang资源下载 > 《Erlang编程指南》英文版下载
2013
11-20

《Erlang编程指南》英文版下载

BACK TOP文章索引

  1. 书名
  2. 格式
  3. 内容简介
  4. 作者简介
  5. 目录
  6. 前言
  7. 媒体评论
  8. 下载地址
  9. 共4条评论

书名

Erlang编程指南》英文版
原作名: Erlang Programming

格式

pdf

内容简介

    《Erlang编程》深入介绍了Erlang,这是一门满足高并发、容错和快速响应等苛刻要求的理想编程语言。随着多核CPU以及与之俱来的新并发扩展方式崭露头角,Erlang正在获得更广泛的接受和应用。只要拥有这本指南,无论此前的编程水平或经验如何,你都将学会用Erlang编写复杂的并发程序。
《Erlang编程》由Erlang国际社区的两位领袖级人物基于他们的培训教材撰写,重点解析该语言的语法和语义,并详细阐述模式匹配、严格列表(proper lists)、递归、调试、网络与并发等重要概念的精髓要义。
《Erlang编程(影印版)》可以帮助你:理解并掌握Erlang的诸多强项,以及其设计者潜心设计的各种特性;学习并发背后的概念和Erlang相应的处理方法;编写高效的Erlang程序,并且保持代码整洁易读;发现Erlang如何满足分布式系统的需求;小试牛刀,添加简单图形用户界面;学习Erlang的追踪机制,用于调试并发和分布式系统;使用内嵌的Mnesia数据库和其他表存储特性。
无论你是新手还是富有经验的Erlang开发者,《Erlang编程》都是案头必备的重要参考资料。

作者简介

    塞萨芮利(Francesco Cesarini)从事Erlang/OTP教学14年,学生不仅来自高校,还有开发者、测试人员和项目/技术经理。他帮助筹建了爱尔兰、 美国和英国的Erlang开发中心。
汤普森(Simon Thompson)是一位来自肯特大学计算实验室的逻辑学与计算方法教授,在过去的25年中,他一直致力于本科生和研究生的计算机教学工作。

目录

1.introduction why should i use erlang?
Why Should I Use Erlang?
The History of Erlang
Erlangs Characteristics
High-Level Constructs
Concurrent Processes and Message Passing
Scalable, Safe, and Efficient Concurrency
Soft Real-Time Properties
Robustness
Distributed Computation
Integration and Openness
Erlang and Multicore
Case Studies
The AXD301 ATM Switch
CouchDB
Comparing Erlang to C++
How Should I Use Erlang?2.basic erlang integers
the erlang shell
floats
atoms
booleans
tuples
lists
term comparison
variables
complex data structures
pattern matching
functions
modules
exercises

3.sequential erlang conditional evaluations
guards
built-in functions
recursion
runtime errors
handling errors
library modules
the debugger
exercises

4.concurrent programming creating processes
message passing
receiving messages
registered processes
timeouts
benchmarking
process skeletons
tail recursion and memory leaks
a case study on concurrency-oriented programming
race conditions, deadlocks, and process starvation
the process manager
exercises

5.process design patterns client/server models
a process pattern example
finite state machines
event managers and handlers
exercises

6.process error handling process links and exit signals
robust systems
exercises

7.records and macros records
macros
exercises

8.software upgrade upgrading modules
behind the scenes
upgrading processes
the .erlang file
exercise

9.more data types and high-level constructs functional programming for real
funs and higher-order functions
list comprehensions
binaries and serialization
references
exercises

10.ets and dets tables ets tables
dets tables
a mobile subscriber database example
exercises

11.distributed programming in erlang distributed systems in erlang
distributed computing in erlang: the basics
the epmd process
exercises

12.otp behaviors introduction to otp behaviors
generic servers
supervisors
applications
release handling
other behaviors and further reading
exercises

13.introducing mnesia when to use mnesia
configuring mnesia
transactions
partitioned networks
further reading
exercises

14.gui programming with wxerlang wxwidgets
wxerlang: an erlang binding for wxwidgets
a first example: microblog
the miniblog example
obtaining and running wxerlang
exercises

15.socket programming user datagram protocol
transmission control protocol
the inet module
further reading
exercises

16.interfacing erlang with other programming languages an overview of interworking
interworking with java
c nodes
erlang from the unix shell: erl_call
port programs
library support for communication
linked-in drivers and the ffi
exercises

17.trace bifs, the dbg tracer, and match specifications introduction
the trace bifs
tracing calls with the trace_pattern bif
the dbg tracer
match specifications: the fun syntax
match specifications: the nuts and bolts
further reading
exercises

18.types and documentation types in erlang
typer: success types and type inference
documentation with edoc
exercises

19.eunit and test-driven development test-driven development
eunit
the eunit infrastructure
testing state-based systems
testing concurrent programs in erlang
exercises

20.style and efficiency applications and modules
processes and concurrency
stylistic conventions
coding strategies
efficiency
and finally
appendix: using erlang
index

前言

    What made us start writing this book in the first place is the enthusiasm we share for Erlang. We wanted to help get the word out, giving back a little of what the community has given to us. Although we both got into Efiang for very different reasons, the end result was the same: lots of fun hours doing lots of fun stuff at a fraction of the effort it would have taken with other languages. And best of all, it is not a tool we use for hobby projects, but one we use on a daily basis in our real jobs!
Francesco: Why Erlang?
The year was 1994. While studying computer science at Uppsala University, one of the courses I took was on parallel programming. The lecturer held up the first edition of Concurrent Programming in Erlang (Prentice Hall) and said, ”Read it.” He then held up a handout and added, ”These are the exercises, do them,” after which Erlang barely got a mention; it was quickly overshadowed with the theory of threads, shared memory,semaphores, and deadlocks.
As the main exercise for this course, we had to implement a simulated world inhabited by carrots, rabbits, and wolves. Rabbits would roam this world eating carrots that grew in random patches. When they had eaten enough carrots, the rabbits would get fat and split in two. Wolves ran around eating up the rabbits; if they managed to catch and eat enough rabbits, they would also get fat and split. Rabbits and wolves within a certain distance of each other would broadcast information on food and predators. If a rabbit found a carrot patch, other rabbits would quickly join him. If a wolf found a rabbit,the pack would start chasing it.

媒体评论

    “尽管我已经使用Erlang多年,但在审读这份手稿的过程中,我还是常常在屏幕上打开该书某些章节,以便编程时引用。不同水平层次的所有Erlang程序员都能在这本颇具价值的好书中找到问题解答和参考材料。”
——Steve Vinoski,“The Functional Web”专栏作家,《IEEE Internet Computing》杂志

下载地址

Erlang编程指南》英文版下载地址


《Erlang编程指南》英文版下载》有 4 条评论

  1. 滚特么的、撒比给那叽歪比歪BB

  2. 滚特么的、撒比给那叽歪比歪BB

  3. 好想念五月,没有送她离开

留下一个回复

你的email不会被公开。