The Genetic Engineering of Cells language (GEC) is a programming language for designing and simulating genetic circuits to reprogram cell behaviour. The language can be used to write a program describing the desired behaviour of the cell, and automatically generates the DNA code that is needed to achieve this behaviour. The language allows logical interactions between potentially undetermined proteins and genes to be expressed in a modular manner, and generates sequences of biological parts using logic programming techniques and prototype databases containing known biological parts and protein interactions. GEC is a first step towards the automatic translation of high-level behavioural designs to low-level DNA code.