  In genetic systems there is a non-trivial interface between the sequence of
symbols which constitutes the chromosome, or ``genotype'', and the products
which this sequence encodes --- the ``phenotype''. This interface can be
thought of as a ``computer''. In this case the chromosome is viewed as an
algorithm and the phenotype as the result of the computation. In general only a
small fraction of all possible sequences of symbols makes any sense for a given
computer. The difficulty of finding meaningful algorithms by random mutation is
known as the brittleness problem. In this paper we show that mutation and
crossover favour the emergence of an algorithmic language which facilitates the
production of meaningful sequences following random mutations of the genotype.
We base our conclusions on an analysis of the population dynamics of a variant
of Kitano's neurogenetic model wherein the chromosome encodes the rules for
cellular division and the phenotype is a 16-cell organism interpreted as a
connectivity matrix for a feedforward neural network. We show that an
algorithmic language emerges, describe this language in extenso, and show how
it helps to solve the brittleness problem.
