Elements of Programming cover
Book

Elements of Programming

by Alexander A. Stepanov, Paul McJones

2009•Addison-Wesley Professional•EN
About the book

Alexander Stepanov and Paul McJones establish a mathematical foundation for software development by applying algebraic structures to code. The text formalizes the discipline of generic programming through the decomposition of algorithms into their fundamental components. It utilizes C++ to demonstrate how concepts like semigroups, monoids, and total orderings relate to practical data structures. By identifying requirements for types and operations—such as regularity and complexity constraints—the authors provide a rigorous framework for building interfaces that ensure correctness and efficiency across different computational models.

This book is intended for software engineers and computer scientists who aim to move beyond ad-hoc implementation toward formal architectural precision. Readers study these pages to gain a deeper understanding of how abstract algebra dictates the behavior of reliable software. The audience walks away with a systematic methodology for identifying reusable patterns and a technical vocabulary for defining precise relationships between algorithms and the data they manipulate. It functions as a manual for writing code that is both mathematically sound and performance-oriented.

Reading profile

Deep, outward-looking, growth-minded and clear-cut; a demanding read.

Best for readers like The Evidence Seeker. Which reader are you?

Details
Published
2009
Publisher
Addison-Wesley Professional
ISBN
9780321635372
Language
EN

More by Alexander A. Stepanov

See all →

Books like Elements of Programming

See all 12 →

Your library, beautifully understood.

papr turns your books into a reading persona, chapter insights you can listen to, and a quiet way to find people who think like you. Free to join.

Get papr — it's free
Download on the App Store Get it on Google Play