Learning Eiffel

If you are new to Eiffel and are interested in learning the technology, you might consider some of the following resources. Remember that Eiffel, unlike other programming languages, is not just a programming language. Instead, it is a full life-cycle framework for software development. As a consequence, learning Eiffel implies learning the Eiffel Method and the Eiffel programming Language. Additionally, the Eiffel development environment EiffelStudio is specifically designed to support the method and language. So having an understanding of the method and language helps you to appreciate the capabilities and behavior of EiffelStudio.

Online presentations

Your first stop in getting acquainted with Eiffel might be the collection of online presentations on the eiffel.com website. These presentations each usually take less than an hour to view, and give an introduction to Eiffel concepts including Design by Contract, the EiffelStudio development environment, and includes several presentations that describe selected Eiffel features in relation to those of other other development tools.

Online documentation set

The eiffel.org/documentation section contains the online documentation for the Eiffel method, tools, and language. Within the documentation set are tutorials to help you learn about the Eiffel programming language and tools.

The Eiffel Tutorial

A tutorial that covers the Eiffel Method and much of the Eiffel programming language.

The EiffelStudio Guided Tour

This Introducing EiffelStudio page is good way to get a feel for what EiffelStudio can do.

Academic materials available online

Many colleges and universities use Eiffel to teach "best practices" in software engineering. Often the materials used in courses are available on the worldwide web. For example, the teaching materials for courses at the Swiss Federal Institute of Technology in Zurich are available at this web address (warning: old content).

If you search the web, you can find similar materials at other academic institutions.


To find information about the most up-to-date books about Eiffel, look here.

Examples and sample code

Throughout the documentation site, there are many code snippets designed to illustrate certain language features or design principles. For example, the code snippet here shows the mechanics of redefining an inherited feature.

In the EiffelStudio distribution you will find a subdirectory "examples" which contains many examples of using Eiffel, primarily with the Eiffel class libraries.

A third source of examples is the Examples book in the documentation pages.

Eiffel Programming Language Syntax

The documentation site includes a summary of the syntax of Eiffel the language. This summary is intended to reflect the state of the current official ISO/ECMA Eiffel standard document.

However, usually you will find that there are differences in the syntax supported by EiffelStudio's compiler and that defined in the current standard. The differences between the standard and the EiffelStudio implementation are summarized in the EiffelStudio release notes and in a documentation page that is specific to that purpose.

Another a documentation page summarizes changes to the pre-ECMA definition of Eiffel as described in ETL-2 "Eiffel: The Language".