A coding idiom is a solution to a commonly occurring programming problem. In a sense all recipes are idioms, but we use the term here for those recipes that apply to many different tasks. In Erlang many patterns, such as object oriented programming, become idioms as we can express these patterns directly in code using functions and macros.

A coding idiom is a solution to a commonly occurring programming problem. In a sense all recipes are idioms, but we use the term here for those recipes that apply to many different tasks. In Erlang many patterns, such as object oriented programming, become idioms as we can express these patterns directly in code using functions and macros.

−

A seminal work in Object Oriented Programming is the so-called "Gang of Four" book, [http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/sr=8-1/qid=1157416328/ref=pd_bbs_1/002-2682971-4220810?ie=UTF8&s=books Design Patterns: Elements of Reusable Object-Oriented Software]. In the late 1990's, Peter Norvig [http://www.norvig.com/design-patterns/ argued] that 16 of the 23 patterns in the ''Design Patterns'' book are simplified or eliminated in dynamic languages, such as Lisp or Erlang.

+

A seminal work in Object Oriented Programming is the so-called "Gang of Four" book, [http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/sr=8-1/qid=1157416328/ref=pd_bbs_1/002-2682971-4220810?ie=UTF8

−

+

−

Hopefully, with the aid of the recipes in this section, you will soon be building robust, efficient, and understandable modules in Erlang.

+

−

+

−

== General Concepts ==

+

−

+

−

Erlang programs are typically structured and built quite differently than many other languages. The major differences can be summarized in a few bullet points, which I here link to important papers exploring these ideas in more depth.

+

−

+

−

* [http://www.sics.se/~joe/thesis/armstrong_thesis_2003.pdf Let It Fail] -- The design of reliable systems, considering that the language implementations and runtimes are typically incorrect themselves, requires a new way of approaching software design. See also [[Hardcoding_Expectations]].

Latest revision as of 18:44, 10 April 2007

A coding idiom is a solution to a commonly occurring programming problem. In a sense all recipes are idioms, but we use the term here for those recipes that apply to many different tasks. In Erlang many patterns, such as object oriented programming, become idioms as we can express these patterns directly in code using functions and macros.