Springe direkt zu Inhalt

Programming Erlang

If you plan to use your own computer or a laptop for the assignments, please install the software before the course starts. There will be no session about "How to install Erlang." The website of the Erlang project not only provides the software itself, but also installation instructions. Note that users of Linux may find the necessary software prebuilt. Erlang may just be a yum install erlang or an aptitude install erlang away.

Below is a tentative course schedule. We shall focus on practical assignments and open discussion. A tutorial session may involve small programming assignments.



Dozent/inProf. Dr. Marcel Kyas
RaumTakustraße 9 SR055,
Time Monday Tuesday Wednesday Thursday Friday
8:30-11:00 Lecture 1 Lecture 4 Lecture 6 Lecture 7 Presentation
11:15-12:00 Tutorial 1 Tutorial 2     Presentation
13:30-15:00 Lecture 2 Lecture 5 Progress Meeting Progress Meeting Presentation
15:15-16:45 Lecture 3       Presentation


Master students, diploma students, and 3rd year Bachelor students


None, but it is useful to repeat the course content of ALP1 and ALP4.


Joe Armstrong. Programming Erlang: Software for a concurrent world. Pragmatic Bookshelf, Raleigh, NC, 2007
KVV page, Mailing list
Time Monday Tuesday Wednesday Thursday Friday
9-11 Lecture 1 Lecture 3 Lecture 4 Lecture 5 Tutorial 5
11-13 Tutorial 1        
13-15 Lecture 2 Tutorial 2 Tutorial 3 Tutorial 4 Presentation
15-17   Tutorial 2 Tutorial 3 Tutorial 4 Presentation

Lecture 1: Introduction and Sequential Erlang

We introduce the basic features of the programming language Erlang and summarise the language needed for sequential programming in Erlang.

Lecture 2: Concurrent Erlang and Error Handling

The basic concepts of concurrent Erlang and how to deal with errors are presented.

Lecture 3: Distributed Erlang

The language features for distributed computing are described.

Lecture 4: Multi-Core Programming

We discuss strategies for multi-core programming in Erlang.

Lecture 5: Advanced Topics

I will summarise all advanced topics which we could not address during the previous lectures and the exercises.

Lecturer's Assistance

If you encounter problems regarding your tutor, assignments, etc,  please contact Marcel Kyas.

Course Material

  • Course notes will be made available at Ms Bahe's office during this term.
  • Slides


Participants are expected to work on daily assignments, which ought to be presented on the next day.

In addition, there will be a large practical assignment, where students are expected to build a small program in Erlang. The results shall be presented on Friday.

Assignments can only be downloaded from the network of FU-Berlin (e.g., via VPN)

Criteria for successful participation

  • Active participation in all sessions is essential!
    • Daily participation is expected.
  • Each student must be able to present the assignment during the tutorials
    • Each student must have presented in the tutorials at least once
  • Submission of the large practical assignment.

Text book for this course

Joe Armstrong. Programming Erlang: Software for a concurrent world. Pragmatic Bookshelf, Raleigh, NC, 2007

Get yourself some Erlang

The Erlang system can be obtained from the Erlang website. If you are using a Linux distribution, you may also try to check the Erlang implementation provided by your distribution.