[prog] Joel on Software: Leaky Abstractions

Jimen Ching jching at flex.com
Tue Apr 15 23:20:16 EST 2003

On Sun, 13 Apr 2003, Mary wrote:
>Tangentially related to the current thread:
>Joel's argument is that you cannot completely abstract away underlying
>levels of software.

I'm not sure I understand the point of this article.  Is anyone able to
determine Joel's reason for wanting non-leaky abstraction?  I just don't
understand what the big deal is.

Concerning the example of C++ string class, I don't know the reason why
the C++ designers didn't make it a built-in (native) type.  But my reason
would be that it would force the overhead on every user (programmer) of
the language.  By making it a part of the library, you give the programmer
greater control on the performance of the resulting software.  I believe
the same reason can be applied to garbage collection.  Though there is the
question of the usefulness of adding two constant string literals.  This
is allowed:

	string s = "foo" "bar";

Though not technically OO, its legal.  ;)

Jimen Ching (WH6BRR)      jching at flex.com     wh6brr at uhm.ampr.org

More information about the Programming mailing list