First note: There are no strings in Erlang. WHAT?? That's right. There are no strings. They can be processed, but since Erlang started as a language used in telecom, it is not the best language to process strings.
Joe Armstrong, the inventor of Erlang, gives a presentation here. It is looking like Erlang is used to build a program for concurrency and speed by parallelizing and utilizing more of the cores as hardware gets faster and faster.
I love this analogy: Joe Armstrong shares this analogy about programming languages. C is car that is easy to drive, but it breaks down occasionally. Java is like a family station wagon -- it's a little heavy. Erlang is like a fleet of little cars that work together to take you where you want to go.
How can you not love a powerful data retrieval tool like this? I'm liking the pattern matching.
91> Weather = [{toronto, rain}, {montreal, storms}, {london, fog}, {paris, sun}, {boston, fog}, {vancouver, snow}].
[{toronto,rain},
{montreal,storms},
{london,fog},
{paris,sun},
{boston,fog},
{vancouver,snow}]
92>
92> FoggyPLace = [X || {X, fog} <- Weather].
[london,boston]
93>
93>
Check out my first program here!
Some Tools
More later.