A transmitter for transmitting blocks of user data (105; 105a-105m) through a channel of variable capacity, the transmitter comprising: an encoder configured to encode each block of user data (105; 105a-105m) into a message block and a plurality of incremental redundancy blocks (109a to 109n); a transmit signal provider configured to provide a transmit signal to be transmitted through the channel, wherein the transmit signal comprises at least one of a number of message blocks and a number of incremental redundancy blocks (109a-109n), depending on the capacity of the channel, and signaling information indicating the number of new message blocks in the transmit signal; a receive interface configured to receive a feedback signal indicating whether decoding of a block of user data by a receive entity (205a-205m) in a receiver processing the block of user data (105; 105a-105m) transmitted through the channel was successful or not; an entity manager configured to generate for each block of user data (105; 105a-105m) whose message block is inserted into the transmit signal by the transmit signal provider a transmit entity associated to the block of user data (105; 105a-105m) and to update a state of the transmit entity in dependence on the received feedback signal; and wherein the state of a generated transmit entity indicates which additional incremental redundancy block (109a-109n) of the transmit entity's associated block of user data (105; 105a-105m) is to be transmitted next, if the received feedback signal indicates unsuccessful decoding for said transmit entity's associated block of user data (105; 105a-105m), wherein the transmit signal provider is configured to fill the transmit signal with the at least one of a number of message blocks and a number of incremental redundancy blocks (109a - 109n) in a predetermined order by passing through a list of the generated transmit entities, to include for each transmit entity the incremental redundancy block (109a-109n) of its associated block of user data (105; 105a-105m) indicated by the state of the transmit entity, and, if the end of the list is reached and there is still space left in the transmit signal, to fill the transmit signal with at least one new message block until the transmit signal is full or until all new message blocks have been inserted. an encoder configured to encode each block of user data (105; 105a-105m) into a message block and a plurality of incremental redundancy blocks (109a to 109n); a transmit signal provider configured to provide a transmit signal to be transmitted through the channel, wherein the transmit signal comprises at least one of a number of message blocks and a number of incremental redundancy blocks (109a-109n), depending on the capacity of the channel, and signaling information indicating the number of new message blocks in the transmit signal; a receive interface configured to receive a feedback signal indicating whether decoding of a block of user data by a receive entity (205a-205m) in a receiver processing the block of user data (105; 105a-105m) transmitted through the channel was successful or not; an entity manager configured to generate for each block of user data (105; 105a-105m) whose message block is inserted into the transmit signal by the transmit signal provider a transmit entity associated to the block of user data (105; 105a-105m) and to update a state of the transmit entity in dependence on the received feedback signal; and wherein the state of a generated transmit entity indicates which additional incremental redundancy block (109a-109n) of the transmit entity's associated block of user data (105; 105a-105m) is to be transmitted next, if the received feedback signal indicates unsuccessful decoding for said transmit entity's associated block of user data (105; 105a-105m), wherein the transmit signal provider is configured to fill the transmit signal with the at least one of a number of message blocks and a number of incremental redundancy blocks (109a - 109n) in a predetermined order by passing through a list of the generated transmit entities, to include for each transmit entity the incremental redundancy block (109a-109n) of its associated block of user data (105; 105a-105m) indicated by the state of the transmit entity, and, if the end of the list is reached and there is still space left in the transmit signal, to fill the transmit signal with at least one new message block until the transmit signal is full or until all new message blocks have been inserted.