Currently, reverse does not participate at all. This law looks eminently exploitable:

foldr c n (reverse xs) = foldl (flip c) n xs

foldr c n $ reverse $ build xs =