90 likes | 291 Views
EUGENE. A Basic Structural Language for describing biological systems. By Adam Liu and Lesia Bilitchenko. What is the problem?. Biological systems need to be Explained Described Interpreted This requires textual representation, which can Describe algorithms Automate processes
E N D
EUGENE A Basic Structural Language for describing biological systems By Adam Liu and Lesia Bilitchenko
What is the problem? • Biological systems need to be • Explained • Described • Interpreted • This requires textual representation, which can • Describe algorithms • Automate processes • Enforce rules • Interact with graphical version (BOGL) • Accepted and used by Community
How can it be solved? • Design a structural programming language • Direct relationship to BOGL symbols • Predefined data types • Ability to create new data types • Data abstraction, hierarchy • Procedures for data manipulation EUGENE: BOGL: Promoter p; RBS rs;
What is the new technical idea • Most existing languages specify species, reaction • Low level of abstraction • Limited in scope, hard to create large designs • Geared towards modeling and are computer readable • Systems Biology Markup language (SBML) • BioNetGen (BNGL) • Antimony (human readable, but for modeling) • EUGENE • Abstraction based on parts • Hierarchy • Rule based description
What is the impact if successful? • Launch of a textual language to describe standard biological parts that • Is human-readable and human-writable • Is portable and customizable • Raises the level of abstraction • Incorporates interactive visuals • Establishes a standardized method of describing complex systems and interactions • Garners support from the community • Is easily maintained if changes are needed
How will the program be organized? • Parse language with a parser generator • Bison, ANTLR, etc. • Write context-free grammar • Parse language with a custom parser in Java • Integrated quickly into Clotho • Needs extensive documentation Loop indefinitely
How will intermediate results be generated? • New syntax and documentation will be constantly updated on the RFC • The interpreter will be updated to parse and handle new syntax • Currently the Pictoparts plug-in in Clotho’s main toolbar • New name? Lachesis, BOL, BOTL, Eugene, Ugene, ALFS, etc.
How will you measure progress? • Progress will be measured by how well we follow the timeline*: • Week 1-2: brainstorm primitives and develop basic syntax • Week 3-5: investigate parsers and get a basic interpreter working • Week 6-8: get feedback, implement functionality, test, repeat • Week 9-11: integrate with visualizations and workflows • Week 12-13: finalize documentation Week: 1 2 3 4 5 6 7 8 9 10 11 12 13 Month: June July August *will probably change