From: David Vallner Date: 2006-10-21T20:24:47+09:00 Subject: Re: Ruby and Perl --------------enig3CDCD455C7025347E121E8E8 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Paul Lutus wrote: > Squeamizh wrote: >=20 >> Paul Lutus wrote: >>> At this point, someone might ask what is the point, then? Why have >>> objects? The answer is that some programming problems are sufficientl= y >>> complex that either it is not possible to write a reliable program >>> without using OO principles, or a particular program can't be written= at >>> all using conventional, pre-OO methods. >> Such as... ? >=20 > 1. The next version of Windows, the one that Microsoft had intended to > write, but gave up on, in spite of the billions of dollars in potential= > profits. Part of the reason is the well-documented cowboy coder culture= at > Microsoft, and part of it results from the poorly structured code in > present-day Windows. >=20 > 2. The crime statistic database that the FBI would love to write, spent= > US$170 million dollars trying to write, but failed to write. >=20 > 3. The replacement code for the FAA's traffic control system, which the= y > spent many millions developing, only to give up on and revert to their = old > code and machines. >=20 > Many similar stories. Dozens. >=20 > Obviously when I say that such a program can't be written without using= OO > methods, this is a bit hyperbolic, since these are all examples of prog= rams > that can be written in principle, but with budget and time constraints,= it > is often not possible in practice. >=20 So, the plural of "anecdote" is "proof" nowadays? OO methodologies aren't inherently something that magically makes a software project "doable" - only when the time constraints are considered this makes sense. (The overgeneralised blanket statement wasn't hyperbolic, it was plain false by itself.) In my opinion, the OO computation model is successful because it's more natural and easier to understand than let's say the pure functional one - notably so when you consider the more high-level abstractions. This makes it easier to become "qualified enough" to solve a given problem and maintain an OO solution. (Paul Graham might or might not object ;P) David Vallner --------------enig3CDCD455C7025347E121E8E8 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32) iD8DBQFFOgOCy6MhrS8astoRAorIAJ0fWGtLQ/QepPNC+LNMT45kppHGBACfR4RH Ty/45prbQ242Bh8qxAq0QBw= =9X+C -----END PGP SIGNATURE----- --------------enig3CDCD455C7025347E121E8E8--