Book description
A multi-user game, web site, cloud application, or networked database can have thousands of users all interacting at the same time. You need a powerful, industrial-strength tool to handle the really hard problems inherent in parallel, concurrent environments. You need Erlang. In this second edition of the bestselling Programming Erlang, you'll learn how to write parallel programs that scale effortlessly on multicore systems.
Using Erlang, you'll be surprised at how easy it becomes to deal with parallel problems, and how much faster and more efficiently your programs run. That's because Erlang uses sets of parallel processes-not a single sequential process, as found in most programming languages.
Joe Armstrong, creator of Erlang, introduces this powerful language in small steps, giving you a complete overview of Erlang and how to use it in common scenarios. You'll start with sequential programming, move to parallel programming and handling errors in parallel programs, and learn to work confidently with distributed programming and the standard Erlang/Open Telecom Platform (OTP) frameworks.
You need no previous knowledge of functional or parallel programming. The chapters are packed with hands-on, real-world tutorial examples and insider tips and advice, and finish with exercises for both beginning and advanced users.
The second edition has been extensively rewritten. New to this edition are seven chapters covering the latest Erlang features: maps, the type system and the Dialyzer, WebSockets, programming idioms, and a new stand-alone execution environment. You'll write programs that dynamically detect and correct errors, and that can be upgraded without stopping the system. There's also coverage of rebar (the de facto Erlang build system), and information on how to share and use Erlang projects on github, illustrated with examples from cowboy and bitcask.
Erlang will change your view of the world, and of how you program.
Table of contents
-
Programming Erlang, Second Edition
- Copyright
- For the Best Reading Experience...
- Table of Contents
- Early Praise for Programming Erlang, Second Edition
- Introduction
- Part 1: Why Erlang?
-
Part 2: Sequential Programming
- Chapter 3: Basic Concepts
- Chapter 4: Modules and Functions
- Chapter 5: Records and Maps
- Chapter 6: Error Handling in Sequential Programs
- Chapter 7: Binaries and the Bit Syntax
-
Chapter 8: The Rest of Sequential Erlang
- apply
- Arithmetic Expressions
- Arity
- Attributes
- Block Expressions
- Booleans
- Boolean Expressions
- Character Set
- Comments
- Dynamic Code Loading
- Erlang Preprocessor
- Escape Sequences
- Expressions and Expression Sequences
- Function References
- Include Files
- List Operations ++ and - -
- Macros
- Match Operator in Patterns
- Numbers
- Operator Precedence
- The Process Dictionary
- References
- Short-Circuit Boolean Expressions
- Term Comparisons
- Tuple Modules
- Underscore Variables
- Chapter 9: Types
- Chapter 10: Compiling and Running Your Program
- Part 3: Concurrent and Distributed Programs
-
Part 4: Programming Libraries and Frameworks
- Chapter 15: Interfacing Techniques
- Chapter 16: Programming with Files
- Chapter 17: Programming with Sockets
- Chapter 18: Browsing with Websockets and Erlang
- Chapter 19: Storing Data with ETS and DETS
- Chapter 20: Mnesia: The Erlang Database
- Chapter 21: Profiling, Debugging, and Tracing
- Chapter 22: Introducing OTP
- Chapter 23: Making a System with OTP
- Part 5: Building Applications
- Appendix 1: OTP Templates
- Appendix 2: A Socket Application
- Appendix 3: A Simple Execution Environment
Product information
- Title: Programming Erlang, 2nd Edition
- Author(s):
- Release date: September 2013
- Publisher(s): Pragmatic Bookshelf
- ISBN: 9781937785536
You might also like
book
Erlang Programming
This book is an in-depth introduction to Erlang, a programming language ideal for any situation where …
book
Introducing Erlang, 2nd Edition
If you’re new to Erlang, its functional style can seem difficult, but with help from this …
book
Get Programming with Haskell
Get Programming with Haskell introduces you to the Haskell language without drowning you in academic jargon …
book
Programming Elixir ≥ 1.6
This book is the introduction to Elixir for experienced programmers, completely updated for Elixir 1.6 and …