Elements of Programming Alexander Stepanov and Paul McJones Semigroup Press, June 2019; Addison-Wesley Professional, June 2009 Decomposing programs into a system of algorithmic components Notice After ten years in print, our publisher decided against further printings and has reverted the rights to us. We have published Elements of Programming in two forms: a free PDF and a no-markup paperback. PD