bertrand@eiffel.UUCP (Bertrand Meyer) (07/26/90)
The following list answers a frequently asked question.
The list was prepared fairly quickly and is not
guaranteed to be complete. It will be updated
as new articles appear, or omissions are pointed
out to us.
AN EIFFEL BIBLIOGRAPHY
August 1990
The documents listed below describe various aspects of
Eiffel: the language, the supporting environment (in
Interactive's implementation), and its practical use.
Most articles without an author indication are by B.
Meyer. All are available from Interactive Software
Engineering Inc. and other Eiffel distributors, under
the Technical Report numbers (TR-EI-``n/CC'') given
(some of them only as part of the book ``An Eiffel
Collection'', as indicated below).
Not included in the list below are the proceedings
of the International Eiffel Conferences'' (Paris,
1988; San Diego, 1988; Paris, 1989; New Orleans, 1989;
Paris, 1990). These proceedings, containing a number
of interesting articles about actual user experiences
with Eiffel, were distributed to conference
participants but have not been republished.
The list uses an order which is not chronological,
but but goes from the more general documents to the
more specific ones.
1. ``Object-Oriented Software Construction'', a book
published by Prentice-Hall. 534+xviii pages.
Explains the Eiffel approach to the design and
implementation of high-quality software.
TR-EI-10/OO. ISBN 0-13-629049-3. Paperback
(not available in US): 0-13-629031-0
2. ``Eiffel: An Introduction''. Presents a brief
overview of the language and Interactive's
environment.
TR-EI-3/GI. Version 2.3, August 1990
3. ``Eiffel: The Language''. Provides a complete
description of the language. Intended as reference
rather than pedagogical introduction. Was written
both for users of existing Eiffel implementations and
for developers of new implementations.
TR-EI-17/RM. Version 2.3, August 1990
4. ``Eiffel: The Libraries''. Describes the Eiffel
Libraries of reusable software components.
TR-EI-7/LI. Version 2.3, August 1990
5. ``Eiffel: The Environment''. Shows how to use
Eiffel in practice through the tools of Interactive's
Eiffel environment (compiling, debugging, browsing).
TR-EI-5/UM. Version 2.3, August 1990
6. ``An Eiffel Collection''. A collection of
articles, many of them published in journals or
conference proceedings, describing various aspects of
Eiffel and Interactive's environment. Articles
appearing in this volume are marked in the right
margin below. (This book.)
TR-EI-20/EC. Version 2.3, August 1990
7. ``Release 2.2 Overview''. Surveys the
enhancements and extensions introduced in release 2.2
of Eiffel (August 1989).
TR-EI-16/22. August 1989.
8. ``Release 2.3 Overview''. Surveys the
enhancements and extensions introduced in release 2.3
of Eiffel (September 1990).
TR-EI-16/23. August 1990
9. ``From Structured Programming to Object-Oriented
Design: The Road to Eiffel''. Appeared in ``Structured
Programming'', Volume 10, Number 1, pages 19-39,
January 1989. A free-form discussion of the thinking
that led to the design of Eiffel.
Reproduced in ``An Eiffel Collection''.
10. ``Conversation with Editorial Board Member B.
Meyer''. Appeared in ``Journal of Object-Oriented
Programming'', Volume 2, Number 2, pages 41-42, May-
June 1989. An interview where the author explains
some of the background that led to Eiffel, and his
views of the evolution of object-oriented technology.
Reproduced in ``An Eiffel Collection''.
11. ``The New Culture of Software Development:
Reflections on the Practice of Object-Oriented
Design''. Appeared in ``TOOLS 1'' (Technology of
Object-Oriented Languages and Systems, Paris, November
1989), SOL, Paris, pages 13-23, November 1989. A
broad discussion of object-oriented programming as a
new culture, the ``component culture'', implying a
radical departure from the traditional ``project
culture''. Addresses the managerial and organizational
consequences of introducing object-oriented
technology, with its emphasis on reuse, in a corporate
environment, with some practical advice for easing the
transition.
Reproduced in ``An Eiffel Collection''.
12. ``Sequential and Concurrent Object-Oriented
Programming''. Appeared in ``TOOLS 2'' (Technology of
Object-Oriented Languages and Systems, Paris, 23-26
June 1990), Angkor/SOL, Paris, pages 17-28, June 1990.
Justifies and describes a concurrency mechanism for
Eiffel, meant to cover parallel, coroutine, real-time,
distributed and process control applications.
Reproduced in ``An Eiffel Collection''.
13. ``Tools for the New Culture: Lessons from the
Design of the Eiffel Libraries''. To appear in
``Communications of the ACM'', September 1990.
Discusses the design and implementation of the Eiffel
libraries, and general principles for developing good
libraries of reusable software components.
Reproduced in ``An Eiffel Collection''.
14. ``Programming as Contracting''. Reviews the
Eiffel approach to software reliability, emphasizing
assertions, disciplined exceptions and controlled
inheritance.
TR-EI-12/CO. Version 2, March 1988.
Reproduced in ``An Eiffel Collection''.
15. ``A Development in Eiffel: Design and
Implementation of a Network Simulator'', by Cyrille
Gindre and Fre'de'rique Sada. Appeared in ``Journal of
Object-Oriented Programming'', Volume 2, Number 2,
pages 27-33, May-June 1989. A report on the
experience of developing an industrial product with
Eiffel at Thomson-CSF. Includes discussion of design
issues and methodology, and some measures on the
resulting product, in particular the reusability
factor,
Reproduced in ``An Eiffel Collection''.
16. ``Reusability: The Case for Object-Oriented
Design''; appeared in ``IEEE Software'', March 1987.
Analyzes the object-oriented approach to software
reusability, emphasizing the Eiffel approach through
examples.
TR-EI-6/RE. Version 1.2, September 1986.
Reproduced in ``An Eiffel Collection''.
17. ``Genericity versus Inheritance'', Proceedings of
ACM OOPSLA Conference, Portland, Sept. 1986, SIGPLAN
Notices, 21, 10, pp. 391-405; revised version appeared
in ``Journal of Pascal, Ada and Modula-2'', 1987.
Compares the object-oriented notion of inheritance
with the genericity mechanism of Ada. Explains how
the two concepts were reconciled by the design of
Eiffel, and describes Eiffel's generic (parameterized)
classes.
TR-EI-8/GI. Version 2, 1987.
18. ``Bidding Farewell to Globals''. Appeared in
``Journal of Object-Oriented Programming'' (Eiffel
column), Volume 1, Number 4, pages 73-76, August-
September 1988. An explanation of why global
variables, which hamper software quality, do not exist
in Eiffel, and a presentation of Eiffel techniques for
sharing information between modules.
Reproduced in ``An Eiffel Collection''.
19. ``Harnessing Multiple Inheritance''. Appeared in
``Journal of Object-Oriented Programming'' (Eiffel
column), Volume 1, Number 5, pages 48-51, November-
December 1988.
Reproduced in ``An Eiffel Collection''.
20. ``You can write, but can you type?''. Appeared in
``Journal of Object-Oriented Programming'' (Eiffel
column), Volume 1, Number 6, pages 58-67, March-April
1989. An introductory discussion of what typing means
in the object-oriented context.
Reproduced in ``An Eiffel Collection''.
21. ``Static Typing for Eiffel''. Technical Report
TR-EI-18/ST, Interactive Software Engineering Inc.,
July 1989 (revised from January 1989 version). A
detailed technical discussion of some of the more
intricate aspects of static typing for object-oriented
programming, explaining the design choices made in
Eiffel.
TR-EI-18/ST. July 1989 (revised from Jan.
1989 version).
Reproduced in ``An Eiffel Collection''.
22. ``Pure Object-Oriented Programming with Eiffel''.
Appeared in ``Programmer's Update'', pages 59-69,
February 1990. An interview where the author explains
some of the key Eiffel ideas.
Reproduced in ``An Eiffel Collection''.
23. ``Object-Oriented Analysis: Case Studies'', by
Jean-Marc Nerson, Tutorial Notes for TOOLS 2
(Technology of Object-Oriented Languages and Systems,
Paris, 23-26 June 1990). Describes an object-oriented
system analysis method. The notation is Eiffel-based.
TR-EI-25/AN. Version 1, June 1990.
24. ``Objective Reality'', by Alan Winston. Appeared
in ``Unix World'', pages 72-75, April 1990. Taken
from an article on applications of object-oriented
programming, this extract gives the view of a user
company developing telecommunication applications in
Eiffel.
Reproduced in ``An Eiffel Collection''.
25. ``The Eiffel Environment''. Appeared in ``Unix
Review'', Volume 6, Number 8, pages 44-55, August
1988. Describes the tools supporting software
development in Interactive's implementation of Eiffel,
as they existed in 1988.
Reproduced in ``An Eiffel Collection''.
26. ``Ce'page User's Manual''. Introduces the
general-purpose Ce'page language-customizable editor;
a specialized version of this editor exists for
Eiffel. The Ce'page system itself, entirely written
in Eiffel, is an example of a large application made
possible by the approach.
TR-CE-4/UM, version 1.3, June 1988.
Reproduced in ``An Eiffel Collection''.
27. ``Eiffel: A Language and Environment for Software
Engineering''. Appeared in ``Journal of Systems and
Software'', 1988. Offers a detailed introduction to
the language and Interactive's environment as they
existed in 1988.
TR-EI-2/BR. Version 2.2, January 1987.
28. ``Eiffel: Programming for Reusability and
Extendibility''. Appeared in ``ACM SIGPLAN Notices'',
Volume 22, Number 2, pages 85-94, February 1987. The
first published introduction to Eiffel.
``Eiffel: an Introduction'' is an updated
version.
29. ``Eiffel: Object-Oriented Design for Software
Engineering'' by B. Meyer, Jean-Marc Nerson and
Masanobu Matsuo. Appeared in Proceedings of ESEC 87
(First European Software Engineering Conference),
Strasbourg, 8-11 September 1987, Springer-Verlag,
Lecture Notes in Computer Science, Berlin-New York,
1987. An overview of the principles of Eiffel,
describing the then current state of Interactive's
implementation.
30. ``Eiffel Installation Manual''. Instructs on how
to install Eiffel on a computing system.
TR-EI-4/IM. Version 2.3, August 1990
--
-- Bertrand Meyer
bertrand@eiffel.com