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

Basic Erlang (4 days)

This course gives an introduction to the Erlang, covering the fundamentals of the language: How to run Erlang, how to write code and how to structure programs.


After the course, the participants should
  • be able to write simple Erlang programs
  • understand how Erlang programs are structured
  • have knowledge of the debugging tools provided

Who should attend

This course is necessary for anyone who will be programming in Erlang or involved in projects using Erlang.


It is required that the participants has previous computer- and programming experience.
Knowledge of functional programming languages is an advantage.
Try out the diagnostic test.

Course Dates

See current course schedule.


See current price list.

Basic Erlang, day-to-day agenda

Day 1 - Sequential Programming

  • Introduction
  • Sequential programming part 1
    • Functional language features
    • Data types
    • Variables
    • Pattern matching
    • Functions
    • Modules
    • Built-in functions
  • Running Erlang
    • The run-time system
    • Libraries
    • Man pages
    • The shell
    • Emacs
    • Style conventions
  • Sequential programming part 2
    • Guards
    • Recursion
    • Special forms

Day 2 - Concurrent Programming

  • Concurrent programming
    • Processes
    • Messages
    • Processe patterns
    • Registered processes
    • Timeouts
    • Client-server model
  • The Debugger
    • Usage
    • Work flow

Day 3 - Error Handling

  • Error Handling
    • Links
    • Exit signals
    • Error trapping
    • Designing robust systems
  • Pman
    • Usage
    • Work flow
  • Programming rules
    • Structuring programs
    • Processes
    • Modules
    • Functions
    • Style conventions

Day 4 - POTS and Advanced Topics

  • POTS (Large programming exercise)
  • Advanced Topics
    • Code loading
    • The .erlang file
    • Dynamic function calls
    • Ports
    • Distribution

Basic Erlang, diagnostic test

These questions gives you an idea of what we require of you before taking the course. We believe that you will benefit more from the course if you already know about these things.


  • Do you know what the UNIX commands ls, cd, cp, mv do?
  • Do you know a UNIX text editor (preferably emacs)?
  • Have you used a window system?
  • Have you used a source-level debugger?


  • Do you know what a data type is?
  • Do you know how to program using linked lists?
  • Do you know what a vector is?
  • Do you know how a stack operates?

Updated: 2000-04-06