  Many classical constructions, such as Plotkin's and Turyn's, were generalized
by matrix product (MP) codes. Quasi-twisted (QT) codes, on the other hand, form
an algebraically rich structure class that contains many codes with best-known
parameters. We significantly extend the definition of MP codes to establish a
broader class of generalized matrix product (GMP) codes that contains QT codes
as well. We propose a generator matrix formula for any linear GMP code and
provide a condition for determining the code size. We prove that any QT code
has a GMP structure. Then we show how to build a generator polynomial matrix
for a QT code from its GMP structure, and vice versa. Despite that the class of
QT codes contains many codes with best-known parameters, we present different
examples of GMP codes with best-known parameters that are neither MP nor QT.
Two different lower bounds on the minimum distance of GMP codes are presented;
they generalize their counterparts in the MP codes literature. The second
proposed lower bound replaces the non-singular by columns matrix with a less
restrictive condition. Some examples are provided for comparing the two
proposed bounds, as well as showing that these bounds are tight.
