Ericsson AB    
· Home
· Licensees Area
For comments or questions about this site, contact us.

Continued Erlang (4 days)

This course continues where Basic Erlang leaves off. It covers the more advanced features of Erlang such as distributed programming and communication with the environment. It also gives an introduction to some tools and libraries and discusses how to write robust, efficient Erlang programs.


After the course, the participants should
  • be able to write Erlang programs handling large amounts of data
  • be able to write Erlang programs communicating with the outside world
  • be able to write distributed Erlang programs
  • have knowledge of important aspects when writing robust, efficient Erlang programs
  • have knowledge of the tools and libraries provided

Who should attend

The course aims at Erlang programmers who have participated in the Basic Erlang course and now wants to gain more knowledge about the language and the programming environment.

The course also introduces concepts which are essential for programming using OTP, and is thus a prerequisite for the OTP Application Developer's course.


Basic Erlang course or the corresponding knowledge.
At least a few weeks experience of Erlang programming.
Try out the diagnostic test.

Course Dates

See current course schedule.


See current price list.

Continued Erlang, day-to-day agenda

Day 1

  • Introduction
  • Repetition Basic Erlang course, server concept
    • Sequential programming
    • Running Erlang
    • Concurrent programming
    • Error handling
    • Client-server model
  • More about data types
    • Data types
    • References
    • Binaries
  • Erlang 4.4 extensions
    • Records
    • Constants
    • Macros
    • Include files

Day 2

  • ETS and TV
    • Hash tables
    • ETS
    • TV
    • More about ETS
    • Memory usage
    • DETS
  • Code loading
    • Code loading mechanism
    • Changing code
    • Issues to remember
  • Distributed Erlang
    • What is distributed Erlang?
    • Erlang nodes
    • Distributed programming techniques
    • RPC
    • Authentication
    • BIFs
    • Modules

Day 3

  • Ports
    • What is a port?
    • Port creation
    • Port protocol
    • Controlling the port
  • Funs
    • What is a fun?
    • Variable bindings
    • Higher order functions
    • Functions returning functions
  • List comprehensions
    • What is list comprehensions?
    • Examples

Day 4

  • Catch and throw
    • catch
    • throw
  • Robustness and efficiency
    • Robustness
    • Program structure
    • Error detection scheme
    • Readability
    • Testing
    • Efficiency
    • Tuning
    • Helpful hints
  • Cover
    • Usage
    • Work flow
  • GS
    • Architecture
    • Interface functions
    • Graphical objects
    • Options
    • Events
    • Examples
    • More about GS

Continued Erlang, diagnostic test


  • Have you been using profiling tools?
  • Do you know what a GUI is?
  • Do you know what a widget is?


  • You should have used Erlang.
  • Are you familiar with the client/server concept?
  • Have you used a data base?
  • Are you familiar with records?
  • Do you know what a preprocessor is?
  • Can you write a simple server in Erlang without consulting the manuals?
  • Have you encountered event-driven programming?
  • Are you tired of these questions?

Updated: 2000-03-29