InfoQ Homepage Presentations Erlang's Open Telecom Platform (OTP) Framework
Erlang's Open Telecom Platform (OTP) Framework
Summary
Steve Vinoski introduces Erlang’s OTP Frmework, outlining some of its main features, including several behaviors – implementations of common patterns useful for concurrent fault-tolerant applications.
Bio
Steve Vinoski is the author of "Toward Integration" by IEEE Internet Computing, and has written for magazines such as C/C++ Users Journal and C++ Report and is the co-author of Advanced CORBA Programming with C++ (APC) with Michi Henning. He is currently an architect at Basho Technologies. He previously worked as chief architect for IONA Technologies, HP, Apollo Computer and Texas Instruments.
About the conference
Software is changing the world; QCon aims to empower software development by facilitating the spread of knowledge and innovation in the enterprise software development community; to achieve this, QCon is organized as a practitioner-driven conference designed for people influencing innovation in their teams: team leads, architects, project managers, engineering directors.
Community comments
correcting an error in the presentation
by Steve Vinoski,
correcting an error in the presentation
by Steve Vinoski,
Your message is awaiting moderation. Thank you for participating in the discussion.
I've been waiting for this video to get posted so I can correct an error I made during the presentation. :)
Starting at about 19:05 into the presentation, while explaining recursion and different function clauses in the ping-pong example, I got a question from the audience regarding the ordering of the clauses of the functions. Specifically, the ping function clauses on slide 27 are intentionally out of order because I thought it would be easier to explain them that way, showing the general recursion case first and the recursion termination function second. When the audience member asked me if the order mattered, I said it didn't, but in this case that's definitely wrong. If you tried to compile the ping clauses as shown on the slide, the compiler would warn you that the second clause would never be reached, because the argument N in the first clause would always match before the argument 0 in the second clause. The proper answer to the question is that function clauses are matched in order, top to bottom. To be fair, there are cases where clause ordering doesn't really matter, such as having a non-empty list in one clause and an empty list in another so that matching is unambiguous, and that's what I was thinking of when I answered the question, but it doesn't apply in the ping function example.
Sorry for any confusion!