  A prefix normal word is a binary word with the property that no substring has
more 1s than the prefix of the same length. This class of words is important in
the context of binary jumbled pattern matching. In this paper we present an
efficient algorithm for exhaustively listing the prefix normal words with a
fixed length. The algorithm is based on the fact that the language of prefix
normal words is a bubble language, a class of binary languages with the
property that, for any word w in the language, exchanging the first occurrence
of 01 by 10 in w results in another word in the language. We prove that each
prefix normal word is produced in O(n) amortized time, and conjecture, based on
experimental evidence, that the true amortized running time is O(polylog(n)).
