Eppur si sugat

Joe Armstrong joe@REDACTED
Tue May 27 13:06:57 CEST 2003

> > From: Todd Coram <tcoram@REDACTED>
> > To: Bengt Kleberg <eleberg@REDACTED>
> > Cc: erlang-questions@REDACTED
> > On Tue, 27 May 2003 10:54:47 +0200 (MEST)
> > Bengt Kleberg <eleberg@REDACTED> wrote:
> > 
> >  
> > > there is an oo book, without language. ie, a book that claims to deal
> > > with oo, and not a particular oo language. it is ''object oriented
> > > software construction'', by bertrand meyer. perhaps it would be
> > > possible to aim the anti-oo critique towards the ideas in that book?
> > 
> > That book, while well written, is very much with a language: Eiffel. The
> > author explains at the end of the book that he has just taught you
> > Eiffel. (Which he hopefully would then have you purchase it from his company 
> ;-)
> i do not agree. (imho, fwiw, etc)

  Since I have the book in question in my bookshelves I thought I'd check ...

  Part I - is "Issues and principles" 
  Part II - is "Techniques of OO design and programming"

  Part I is general, Part II is stuffed full of Eiffel

  Part I is full of rather general statements about good ways to program.

  Lot's of general statements like:

  - Design simplicity: a simple architecture will always be easier to adapt
to changes than a complex one (page 5)

  "Every module should communicate with as few others as possible" (page 19)

  Then he goes on at great length to say "Abstract data types are wonderful"

  In part I  there is virtually nothing I disagree with  - and all the
statements  he  makes  are   equally  applicable  to  *any*  style  of
programming - just general good advice, equally applicable to C, Java,
Erlang, Basic, Cobol  you name it - And (virtually)  nothing do do with
OO (at least not *exclusively* so).

  Part II - *is* Eiffel. The book  reeks Eiffel - Part II shows how to
achieve the goals in part I (nothing wrong with that) - But since I is
so  general then  part  II could  equally  well have  been written  in
Erlang/C/anything - the goal being  to show how good design principles
(like  minimal  interfaces,  ADTs  etc)  can  be  implemented  in  any

 I would not call this a "oo book without language" and I think Meyer's
title is misleading.

 It's not about OO software construction. It's more

 "generally good design principles" + how to code things in Eiffel.

  The fact  the "OO"  word is on  the cover  and the word  "eiffel" is
absent from the cover notes is probably to sell more titles.


 Anyhow why all the fuss --- Erlang *is* OO

 1) OO langauges are great, and stuffed full of generally "good to have"

 2) Erlang is great and stuffed full of "good to have" things.

 3) Therefore Erlang is an OO language


More information about the erlang-questions mailing list