Engineering Genomes with Genotype Specification Language
High quality DNA design tools are becoming increasingly important as synthetic biology continues to increase the rate and throughput of building and testing genetic constructs. To make effective use of expanded build and test capacity, genotype design tools must not only be efficient enough to allow for many designs to be easily created, but also expressive enough to support the complex design patterns required by scientists on the frontier of genome engineering. Genotype Specification Language (GSL) is a language-based design tool invented at Amyris that enables scientists to quickly create DNA designs using a familiar syntax. This syntax provides a layer of abstraction that moves users away from reading and writing raw DNA sequences toward composing designs in terms of functional parts. GSL increases the speed at which scientists can design DNA constructs, provides a precise and reproducible representation of parts, and achieves these goals while maintaining design flexibility. Finally, the GSL compiler can emit information such as the exact final DNA sequence of the design as well as the reagents (primers and template information) required to physically build the constructs. Since its open-source release in February 2016, the GSL compiler can be freely downloaded and used by genome engineers to efficiently specify genetic designs. This chapter briefly introduces GSL syntax and design principles before examining specific examples of genome engineering tasks with accompanying GSL code.
KeywordsGenome engineering Bio-design automation Programming language
This work was funded entirely by Amyris. We would like to thank Amoolya Singh and Michael Bissell for their support and feedback in writing this publication as well as the entire Amyris strain engineering community for challenging and nurturing GSL throughout its development.
- 1.Xia B, Bhatia S, Bubenheim B, et al (2011) Developer’s and user’s guide to clotho v2.0: A software platform for the creation of synthetic biological systems methods in enzymology. Methods Enzymol 498:97–135, Elesevier. https://doi.org/10.1016/B978-0-12-385120-8.00005-X
- 9.Syme D, Parkinson M (2017) The F# language designs RFCs (F# 4.0, 4.1). https://github.com/fsharp/fslang-design/