Archive for February 27, 2011
Introduction to Erlang post series
While I was writing my first actual (and extremely delayed :-S) article for the Parallelizing simple algorithms series, I realized that since Erlang is not a popular programming language it would be nice to start an Introduction to Erlang post series. I consider Erlang as a must-know language for an engineer that works with distributed systems and parallel programming. Believe me, in several cases, Erlang is a problem solver!
I will try to keep the posts short and example based. An approximation of the posts that I intend to write is:
- Basics: how to get a working Erlang environemt
- Basic Types: integers, floats, …
- Modules and Compiling: how to write and compile a module
- Functions: how to delcare functions
- Library Functions & BIFs
- Lists: list manipulation
- Processes: how to create new processes
- Message Passing: how to send messages between processes
- Debugging: how to debug Erlang programms
- Records: how to use records
I will keep this list updated in case that I come up with new ideas!
I hope I will convince you that Erlang worths every software engineer’s attention..
Parallelizing simple algorithms : Fibonacci
It took me a little more than I expected, but finally I managed to write the first post for the Parallelizing simple algorithms series.
As I “promised”, I will start these series by parallelizing the Fibonacci Number sequence generation. As you probably already know, Fibonacci numbers are the integer sequence produced by the following relationship:
F0
= 0 F1
= 1 Fn
= Fn-2
+ Fn-1
The resulting sequence is: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, . . .