This paper considers the problem of representing horizontal microprograms.Three forms of micro-parallelism are discussed:(a) Where micro-operations are concurrently executable within a single control memory clock cycle; (b) Where micro-operations are executable in a single clock cycle but are not concurrently executable, as in polyphase systems; and (c) Where there are concurrently executable micro-operations whose time of execution span several clock cycles.Language constructs for each of these forms are proposed, and their features discussed.