|
|
|
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.
Objectives
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.
Prerequisites
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.
Prices
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
Day 3 - Error Handling
- Error Handling
- Links
- Exit signals
- Error trapping
- Designing robust systems
- Pman
- 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.
Environment
- 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?
Programming
- 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?
|