research papers
Computer programming was and, in many cases, still is an art rather than a science. Programs are often written without the benefit of any design theory, analysis techniques, or awareness of what others in the field have done. Recently, however, a systematic body of knowledge concerning the design, analysis, and implementation of computer algorithms has begun to emerge. This paper highlights some current developments in this field and shows how proper design techniques can lead to order-of-magnitude improvements in program performance.