Abstract
In this chapter, we will present a method for the application model synthesis problem, i.e., generate the application graph for a biochemical assay written in the Aqua high-level protocol language presented in Chap. 4. The method has two steps. In the first step, we build a parser that will generate a “parse tree” from Aqua, which is an internal compiler representation. This parse tree is then traversed in a second step in order to generate the application graph model. During application model generation, we address the so-called “mixing problem,” i.e., how to generate a mixing tree to perform an arbitrary mixing ratio, as specified in the high-level language, considering mixing operations with a ratio of one-to-one. The chapter presents the high-level language grammar, the algorithms for the two steps, and several examples of Aqua code and the resulting conversion to the application graph model.
Chapter co-author: Mathias Kaas-Olsen
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
ACCENT website. http://accent.compilertools.net/ (2015)
Amin, A.M.: Aqua+ Manual. Microfluidic Innovations, 1281 Win Hentschel Blvd., West Lafayette, IN 47906 (2015). http://microfluidicinnovations.com/
Antlr website. http://www.antlr.org/ (2015)
Earley, J.: An efficient context-free parsing algorithm. Commun. ACM 13(2), 94–102 (1970)
Parr, T.: The Definitive ANTLR 4 Reference, 2nd edn. Pragmatic Bookshelf (2013)
Parr, T., Harwell, S., Fisher, K.: Adaptive LL (*) parsing: the power of dynamic analysis. In: Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, pp. 579–598. ACM (2014)
Python Lex-Yacc website. http://www.dabeaz.com/ply/ (2015)
Thies, W., Urbanski, J., Thorsen, T., Amarasinghe, S.: Abstraction layers for scalable microfluidic biocomputers (extended version). Technical report, Massachusetts Institute of Technology (2006)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Pop, P., Minhass, W.H., Madsen, J. (2016). Compiling High-Level Languages. In: Microfluidic Very Large Scale Integration (VLSI). Springer, Cham. https://doi.org/10.1007/978-3-319-29599-2_5
Download citation
DOI: https://doi.org/10.1007/978-3-319-29599-2_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-29597-8
Online ISBN: 978-3-319-29599-2
eBook Packages: EngineeringEngineering (R0)