Eiffel is an ISO Standard

January 2007

2006 will remain for the Eiffel community as a milestone: the year when the Eiffel language definition became a standard of the International Standards Organization (ISO).

The ISO standard, released in November, is the culmination of the Eiffel standard process started five years ago within ECMA International. The first major result of that effort was the initial ECMA standard, published in June 2005 as discussed in my April 2005 column, still available at:

http://www.eiffel.com/general/column/2005/April.html

What's new is that we now have a standard with the best possible imprint: ISO. Eiffel joins a select group of programming languages that enjoy this imprint, from Fortran and Cobol to C, C++ and C# -- but not, for example, Java. An ISO standard reinforces Eiffel users in their choice by guaranteeing that Eiffel has passed the ultimate test of stability and durability, and that compilers and tools will continue to thrive for decades. It also makes Eiffel appealing to whole new categories of potential users, as many companies prefer technologies that are backed by an international standard.

The standard is the result of the close relationship between ECMA and ISO. The ECMA standard was itself the target of an extensive revision effort in 2006, taking into account comments received on the first version; the revised version, ECMA 367-2, was published in June 2006 and will be the reference for a long time. Its text is identical to that of the ISO version and can be found at

http://www.ecma-international.org/publications/standards/Ecma-367.htm

You can also find it on the ISO site at http://tinyurl.com/y5abdx with identical contents but a different cover material and content. Note that the ISO page currently shows a price for accessing the material; this should be turned into free access, but in the meantime you can use the ECMA version which is already free.

For a discussion of the actual contents of the standard and the major technical improvements you can consult the April 2005 column (first URL cited above).

The members of the ECMA committee are extremely proud of this achievement, coming out of five years of grueling work. We are also, in particular at Eiffel Software, aware of the new expectations it raises. Foremost is our obligation to implement all of the standard. This is not a trivial task, as some of the most exciting advances, such as attached types to guarantee the total absence of void calls (readers familiar with other languages may think of "null pointer dereferencing"), are pretty demanding on the compiler writers. We have already progressed significantly, implementing some major new mechanisms such as conversions, inline agents, and operator/bracket aliases -- each of them bringing a considerable increase in expressive power and safety, unique to Eiffel. Every new release will bring us closer to an implementation of the full standard; we understand the impatience of the Eiffel community and will shortly publish a "road map" showing the expected date of implementation of every new or revised mechanism. Now that the language is stabilized, it is also incumbent on me to finish "Standard Eiffel" (new title for "Eiffel: The Language", third edition), so that we have an up-to-date, readable and practical description of the full scope of the Eiffel language as it exists today.

The ISO standard will be the reference for everyone in the Eiffel community. We are very grateful for the amount of support it has received from that community, and will work to continue deserving that trust. There could have been no better way to finish 2006, and no better opportunity to wish all readers of EiffelWorld the best for 2007.

-- Bertrand Meyer

Bookmark and Share