A Programming Language for a Biomolecular Computational Model – Københavns Universitet

A Programming Language for a Biomolecular Computational Model

 

Specialeforsvar ved Søren Bjerregaard Vrist

Resume:

The world of biocomputing or biomolecular computing is a mix of biomolecular research and computer science. Research by Neil D. Jones, Jakob Grue Simonsen and Lars Hartmann has uncovered a niche virtually untouched: Regular programs as written by computer science programmers in a biomolecular model.

The literature is rife with on the one hand, research investigating biomolecular "hardware/wetware" for computation and on the other hand research into the use of computational models aiding and modeling biology. 

Hartmann et al. [2010] explores an area taking advantage of both areas and suggests a novel contribution; A biomolecular plausible instruction set, with the promise of programmability on a level which will be familiar to regular computer science programmers without specific knowledge of biocomputers.

This thesis expands the a biomolecular instruction set - defined as a part of the Blob programming model in Hartmann et al. [2010] - by designing and developing an intermediate level programming language -BPLCore - taking the next step toward actually delivering on the promise of good programmability in a biomolecular context.

Part of the process of this thesis has been to familiarize the author with operational semantics in order to provide formal operational semantics for both the blob instruction set of Hartmann et al. [2010] and the developed programming language. This has led to Chapter 6 which contains the product of that effort.

Included also is a review the related work within both the field of biocomputers and biomolecular algebras in some detail, as well as a compiler for the BPLCore programming language which translates into the basic blob model.

The compiler and two small BPLCore programs can be downloaded at http://bloblanguage.appspot.com/

---

Eksaminator: Jakob Grue Simonsen, DIKU

Censor: Peter Sestoft, ITU