  Integer partitions may be encoded as either ascending or descending
compositions for the purposes of systematic generation. Many algorithms exist
to generate all descending compositions, yet none have previously been
published to generate all ascending compositions. We develop three new
algorithms to generate all ascending compositions and compare these with
descending composition generators from the literature. We analyse the new
algorithms and provide new and more precise analyses for the descending
composition generators. In each case, the ascending composition generation
algorithm is substantially more efficient than its descending composition
counterpart. We develop a new formula for the partition function p(n) as part
of our analysis of the lexicographic succession rule for ascending
compositions.
