Jumped to Advogato when I saw a post at ELJ Daily about
software bloat. The author claimed that software is getting
slower faster than hardware gets faster.

Had to laugh at that one. When I started in this
business,
the assembler was so slow (as it ran off floppies)
that I had plenty of time to learn how to juggle while
waiting for my program to be built. Now I compile much
larger applications much faster. Much less juggling. Only
in the short-term, when you don't upgrade your hardware
as often as your software does bloat really degrade
things.

Anyone who's really interested in development tools
that
are the antithesis of bloat should check out the SmallEiffel
compiler. The distribution fits on a single floppy(!),
includes a bootstrap to install the compiler+utilities,
all the source, a standard library and example programs.
And with the -0.75 release, it now includes an interactive
debugger. It's not a toy compiler, it's being used for some
major projects and is a pretty-much complete implementation
of Eiffel. You could argue that it cheats by using a C
compiler for a backend. To which I would reply "it also
compiles to Java Byte Codes. So there."

The compiler is an incredibly aggressive optimizer,
eliminating dead code and method dispatching at every
opportunity. In many benchmarks, it holds its own to C++ in
performance.

Eiffel itself is designed with reusability in mind.
In
many
respects it's a much cleaner language than C++ (which
admittedly is a pretty low bar to clear).