zbMATH — the first resource for mathematics

Eiffel. The language. (English) Zbl 0779.68013
London: Prentice Hall International. XXXV, 594 p. (1992).
The object-oriented programming language “ Eiffel” is considered by many researchers and software engineers to become, in the near future, an important, modern language. It is carefully designed by its inventor, Dr. Bertrand Meyer, and an international consortium of experts, the NICE; and it continues some essential, sound language developments of the past, e.g., to name some, program structuring, strong typing, abstract data typing and representation independent, axiomatic operation specification, information hiding, client-server contracting principle, exception handling, flexible inheritance schema, not found integrated together before in another language.
The book is the official language description and definition for language level 3 (replacing the previous language levels and with some misconceptions and obscurities ironed out) useful for programmers and implementors for compilers in a merged manner.
For programmers it offers a text book-like discussion of language features, of the rationales for their use in programs, and of the formalities necessary for concise program design. There is much background information covering language achievements, e.g., with respect to typing, to information hiding, to object orientation, not only relevant in the context of programming in Eiffel. A lot of examples and a most helpful system of typographical guidance (“Road Signs”) to emphasize main topics and to identify possible pitfalls are provided. Due to the intended merge with information for implementators the text as it is addresses advanced programmer in any common language, not the absolute novice in programming. Sections of the book to the mentioned here separately are the style guidelines in appendix A and the description of a language for assembling classes, LACE, in appendix D.
For implementors of compilers it is the official language definition showing in good balance formalized material (e.g., the syntax of the language) and carefully worded statements on the meaning of program constructs (the semantics). Information merged with this definitorial sections as described above introducing the language features, explaining them and given rationales will also be useful for implementors to find appropriate realisations.
The previous book by Dr. Meyer, “Object-oriented Software Construction”, published 1988 and having introduced the language “Eiffel” (to be precise, its level 1), belongs already to the most influential literature on programming language design and software engineering of the past. This book, “Eiffel, the Language”, certainly will achieve similar widespread consideration.

68N15 Theory of programming languages
68-01 Introductory exposition (textbooks, tutorial papers, etc.) pertaining to computer science