The Antha Programming Language: Making Biology Simple, Reproducible and Scalable
Michael Sadowski  1@  
1 : Synthace Ltd.  -  Website
LBIC, 2 Royal College St, London NW10NH -  United Kingdom

Every bioprocess has two significant dimensions: the physical and the informational. In industrial settings the goal is typically a physical conversion: a cheaper form of matter is transformed into a more valuable one. In a research and development setting, the goal is typically the extraction of information about a biological system either in terms of its constituents or its behaviour in a number of different contexts. In manufacturing the reverse is true, the information gathered in R&D is applied to make the physical process more reliable/productive and consistent using Quality by Design techniques.

Typically there is some limited degree of interplay between the two, however this is mediated by manual processes and error-prone methods for reformatting data to pass between software. This results in processes which are fragile, difficult to change and unduly slow. The inability of such processes to expand past a relatively low degree of complexity and difficulties in scaling past the execution capacity of a single human experimenter are even more significant limitations. A reliance on human execution also causes difficulties in process transfer and reproducibility since in many cases humans cannot practically record sufficient details of protocol execution or do not have precise knowledge of the actions they have taken. Thus they may find it difficult to convey such information to one another and may often rely on others to fill in the gaps in a protocol description by inference.

The Antha programming language is designed to solve these problems by modelling the domain of biological experimentation as a programming task in which physical entities are embedded in a type system alongside the more traditional computational types such as integers, strings and floating-point numbers. Bioprocesses can then be encoded in a way which is unambiguous and scalable, with integration between the digital and physical allowing seamless linking between different processes of data gathering, transformation and reporting.


In this talk I will describe the overall design and implementation of the Antha language with some focus on its role as a cross-platform language for laboratory automation, together with some recent results of its application and a discussion of planned future developments.


Online user: 1