New Book Announcement 
Author Message
 New Book Announcement

                        New Book Announcement

                  "Concurrent Programming in Erlang"

                            J. Armstrong
                             M. Williams
                             R. Virding

                         Prentice Hall, 1993
                          ISBN 0-13-285792-8


    Erlang is  a  concurrent functional programming  language designed
for large industrial real-time systems.  Erlang  is  dynamically typed
and has  a  pattern  matching  syntax.   Functions are  defined  using
recursion  equations.   Erlang  provides   explicit  concurrency,  has
asynchronous message passing and is relatively free from side effects.

    Distributed   Erlang   programs    can   run   transparently    on
cross-platform  multi-vendor systems.  The language has primitives for
detecting  run-time  errors  and  for dynamic  code replacement  (i.e.
changes  to code  can be made in  a running  real-time system, without
stopping system).

    Erlang has real-time GC, modules and a foreign language interface.

    Erlang was  developed  at  the Ellemtel  Telecommunication Systems
Laboratories  and is used within Ericsson for product development  and


                         Part I. Programming.

Chapter 1 An Erlang Tutorial
        1.1 Sequential Programming
        1.2 Data Types
        1.3 Pattern Matching
        1.4 Built-In Functions
        1.5 Concurrency

        A simple tutorial introduction to the Erlang language.

Chapter 2 Sequential Programming
        2.1 Terms
        2.2 Pattern Matching
        2.3 Expression Evaluation
        2.4 The Module System
        2.5 Function Definition
        2.6 Primitives
        2.7 Arithmetic Expressions
        2.8 Scope of Variables

        Sequential Erlang Programming. Everything you always wanted to know
about sequential programming.

Chapter 3 Programming with Lists
        3.1 List Processing BIFs
        3.2 Some Common List Processing Functions
        3.3 Examples
        3.4 Common Patterns of Recursion on Lists
        3.5 Functional Arguments

        Examples of list programming.

Chapter 4 Programming with Tuples
        4.1 Tuple Processing BIFs
        4.2 Multiple Return Values
        4.3 Encrypting PIN Codes
        4.4 Dictionaries
        4.5 Unbalanced Binary Trees
        4.6 Balanced Binary Trees

    Examples of programming with  tuples.

Chapter 5 Concurrent Programming
        5.1 Process Creation
        5.2 Inter-Process Communication
        5.3 Timeouts
        5.4 Registered Processes
        5.5 Client--Server Model
        5.6 Process Scheduling, Real Time and Priorities

    Basic concurrent  programming techniques.  Creating and monitoring
processes. Sending messages between process. Monitoring processes. The
client-server   model   is  introduced.   Primitives   for   real-time

Chapter 6 Error Handling
        6.1 Catch and Throw
        6.2 Process Termination
        6.3 Linked Processes
        6.4 Run-Time Failure
        6.5 Changing the Default Signal Reception Action
        6.6 Undefined Functions and Unregistered Names
        6.7 Catch versus Trapping Exits

    Basic  error  handling  methanisms.  Catch  and  throw.  Detecting
process termination.

Chapter 7 Programming Robust Applications
        7.1 Guarding against Bad Data
        7.2 Robust Server Processes
        7.3 Isolating Computations
        7.4 Keeping Processes Alive
        7.5 Discussion

    Basic   programming  techniques  for   programming  fault-tolerant

Chapter 8 Miscellaneous Items
        8.1 Last Call Optimisation
        8.2 References
        8.3 Code Replacement
        8.4 Ports
        8.5 Process Dictionary

    Changing code in  a running  system without stopping  the  system.
Interfacing to foreign languages.

                        Part II. Applications.

    The applications part of the book  is a set of case studies.  Here
we build on the programming techniques of Part I to construct complete
programs.  Many of the studies are based on real-world applications.

Chapter 9 Databases
        9.1 The Access Functions
        9.2 Simple Database
        9.3 A Multi-Level Database
        9.4 Transaction Management
        9.5 External Databases

    Simple   database   programs,    with   transactions,   roll-back,
fault-tolerance, etc..

Chapter 10 Operating Systems
        10.1 Overview of the Standard Erlang OS
        10.2 System Startup
        10.3 Code Management
        10.4 The Input/Output System
        10.5 The Standard Shell

    An overview of the standard Erlang operating system.

Chapter 11 Real-Time Control
        11.1 A Lift Control System
        11.2 A Satellite Control System

    Two real-time (process control) applications.

Chapter 12 Telephony
        12.1 Typical Aspects of Switching System Software
        12.2 POTS
        12.3 Robustness
        12.4 SDL

    A telephony application.  This  is sub-set of a much larger program
which used to control an Ericsson PABX in a real-world application.

Chapter 13 An ASN.1 Compiler
        13.1 Background
        13.2 About ASN.1
        13.3 BER -- Basic Encoding Rules
        13.4 Implementation
        13.5 ASN.1 Applications

    A cross compiler  from ASN.1 (The  CCITT specified  data transport
definition language)  to  Erlang.   This again  is from  a  real-world

Chapter 14 Graphics
        14.1 The User Interface
        14.2 Basic Graphics Primitives
        14.3 A Pocket Calculator
        14.4 A Prompter
        14.5 A TV Simulation

    Building a graphic user interface in Erlang. This shows how Erlang
can be interfaced to the X-windows system to build an advanced GUI.

Chapter 15 Object-Oriented Programming
        15.1 Basic Concepts
        15.2 Mapping to Erlang
        15.3 An Object-Oriented Interface
        15.4 Object-Oriented Programming
        15.5 Object-Oriented Design

    Discusses  the  relation  between   Erlang  and  Object-Orientated

Tue, 14 Nov 1995 17:25:42 GMT  
 [ 1 post ] 

 Relevant Pages 

1. *** New Book Announcement ***

2. New Book Announcement

3. New Book Announcement: The Art of Computer Systems Performance Analysis

4. New book announcement

5. New Book Announcement : Essential VHDL : RTL Synthesis Done Right

6. New Book Announcement

7. New Book Announcement

8. New Book Announcement

9. New Book: _Forth: the New Model_

10. Object Success: book announcement

11. Object Technology for Scientific Computing: Book Announcement


Powered by phpBB® Forum Software