Abstract
Elegance in software is widely recognized by professionals, but not well articulated. Program elegance rests on not only efficiency, as widely acknowledged, but other features that reflect the notion in other creative endeavors where artifacts are built under constraints, such as architecture. We suggest a compendium of minimality, accomplishment, modesty, and revelation, discussion of which reveals some subtleties. Programming experience enhances appreciation of these features, especially the last. Together, they can viewed as a program’s degree of “fit” to the task, raising other questions in common with any problem of the philosophy of aesthetics.