  If the 20th century was known for the computational revolution, what will the
21st be known for? Perhaps the recent strides in the nascent fields of
molecular programming and biological computation will help bring about the
'Coming Era of Nanotechnology' promised in Drexler's 'Engines of Creation'.
Though there is still far to go, there is much reason for optimism. This thesis
examines the underlying principles needed to realise the computational aspects
of such 'engines' in a performant way. Its main body focusses on the ways in
which thermodynamics constrains the operation and design of such systems, and
it ends with the proposal of a model of computation appropriate for exploiting
these constraints.
  These thermodynamic constraints are approached from three different
directions. The first considers the maximum possible aggregate performance of a
system of computers of given volume, $V$, with a given supply of free energy.
From this perspective, reversible computing is imperative in order to
circumvent the Landauer limit. A result of Frank is refined and strengthened,
showing that the adiabatic regime reversible computer performance is the best
possible for any computer - quantum or classical. This therefore shows a
universal scaling law governing the performance of compact computers of $\sim
V^{5/6}$, compared to $\sim V^{2/3}$ for conventional computers. For the case
of molecular computers, it is shown how to attain this bound. The second
direction extends this performance analysis to the case where individual
computational particles or sub-units can interact with one another. The third
extends it to interactions with shared, non-computational parts of the system.
It is found that accommodating these interactions in molecular computers
imposes a performance penalty that undermines the earlier scaling result.
Nonetheless, scaling superior to that of irreversible computers can be...
