On 02/08/2014 17:28, Doug McIlroy wrote:
Does comment on taste belong in a discussion of
history? I think
so. Unix was born of a taste for achieving big power by small
means rather than by unbounded accumulation of facilities. But
evolution, including the evolution of Unix, does not work that
way. An interesting question is how the corrective of taste manages
ever to recenter the exuberance of evolution. The birth of Unix shows
it can happen. When will it happen again? Can one cite small-scale
examples that gained traction within the larger evolution of Unix?
With modern facilities (hardware, libraries, distributed open source
development) today's small-scale isn't the same as what it was. If one
considers the exuberant size compared to functionality of Node.js (11M
binary), Emacs (10M), gdb (5.2M), mysql (3.1M), and vim (2.1M), here are
some examples of smaller-scale programs that punch noticeably above
their weight.
- git (1.4M) (as a distributed filesystem with rich metadata and
versioning with configuration management thrown in as a bonus)
- tex (309K)
- curl (154K)
- sudo (121K)
- dot (7.7K plus 730K for its libraries)
- traceroute (53K)
Some libraries that deserve mentioning, when compared to libruby (2.3M),
libxml2 (2.2M), and libpython2.6 (1.6M), are the following:
- libssl (431K)
- liblua (177K)
- C++ STL (816K for /usr/include/c++/4.8.2/bits/stl_*)
* Numbers are "ls -lh" output from a 2014.03 Amazon Linux AMI on which I
had an open shell window.
I also think software package management systems are "small-scale", if
one considers the functionality they offer through the thousands of
packages they can install.