acm-header
Sign In

Communications of the ACM

Contributed articles

Erlang


illustration

Illustration by Andy Gilmore

The same component isolation that made it effective for large distributed telecom systems makes it effective for multicore CPUs and networked applications.

The full text of this article is premium content


Comments


CACM Administrator

The following letter was published in the Letters to the Editor in the February 2011 CACM (http://cacm.acm.org/magazines/2011/2/104382).
--CACM Administrator

Joe Armstong explained in his article "Erlang" (Sept. 2010) how a programming language originally developed for "building high-performance telecom switches" is today used for a range of high-availability, scalable applications, but I would like to clarify two parts of that explanation: The first was saying, "This technique was used by Jim Gray(2) in the design of the fault-tolerant Tandem computer." Gray made major contributions at Tandem, but by late 1980, when he joined the company, its fundamental hardware and operating system fault-tolerance techniques were already established. Assigning credit accurately for the various aspects of a large and complex system design (such as Tandem's NonStop systems) may be tricky, but Barlett(1) and Katzman(4) were key contributors to the hardware and the operating system, respectively. Bartlett's paper acknowledged Dennis McEvoy, Dave Hinders, Jerry Held, and Robert Shaw as contributing to design, implementation, and testing. Finally, the co-inventors listed on the first patent granted on the Tandem system, 4,228,496, October 14, 1980, filed September 7, 1976, were: Katzman, James A. (San Jose, CA); Bartlett, Joel F. (Palo Alto, CA); Bixler, Richard M. (Sunnyvale, CA); Davidow, William H. (Atherton, CA); Despotakis, John A. (Pleasanton, CA); Graziano, Peter J. (Los Altos, CA); Green, Michael D. (Los Altos, CA); Greig, David A. (Cupertino, CA); Hayashi, Steven J. (Cupertino, CA); Mackie, David R. (Ben Lomond, CA); McEvoy, Dennis L. (Scotts Valley, CA); Treybig, James G. (Sunnyvale, CA); and Wierenga, Steven W. (Sunnyvale, CA).

Armstrong also said, "Adding transactions is easy," then sketched an implementation. While the implementation may be useful in the telecom world, it does not handle the durability provided by database transactions; see, for example, Gray and Reuter.(3)

Paul McJones
Mountain View, CA

REFERENCES

(1) Bartlett, J.F. A 'nonstop' operating system. In Proceedings of the Hawaii International Conference on System Sciences (1978), 103119.

(2) Gray, J. Why Do Computers Stop and What Can Be Done About It? Technical Report 85.7. Tandem Computers, Inc., 1985.

(3) Gray, J. and Reuter, A. Transaction Processing: Concepts and Techniques. Morgan Kaufman, 1993.

(4) Katzman, J.A. System architecture for NonStop computing. CompCon (1977), 7780.

---------------------------------------------------

AUTHOR'S RESPONSE:

McJones is correct in saying the transactions described in my article are nondurable. Database transactions with ACID atomicity, consistency, isolation, durability properties are provided by the mnesia database included in the Erlang distribution. The purpose of that section was not to cover kinds of transactions but to show the ease a particular type of nondurable transaction involving an in-memory reversion to an earlier state could on failure be accomplished through single-assignment variables.

Joe Armstrong
Stockholm


Displaying 1 comment

Log in to Read the Full Article

Sign In

Sign in using your ACM Web Account username and password to access premium content if you are an ACM member, Communications subscriber or Digital Library subscriber.

Need Access?

Please select one of the options below for access to premium content and features.

Create a Web Account

If you are already an ACM member, Communications subscriber, or Digital Library subscriber, please set up a web account to access premium content on this site.

Join the ACM

Become a member to take full advantage of ACM's outstanding computing information resources, networking opportunities, and other benefits.
  

Subscribe to Communications of the ACM Magazine

Get full access to 50+ years of CACM content and receive the print version of the magazine monthly.

Purchase the Article

Non-members can purchase this article or a copy of the magazine in which it appears.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account