Team:BU Wellesley Software/Notebook/JanooNotebook
From 2011.igem.org
Contents |
Life = 42
--Jtferns 15:47, 7 June 2011 (CDT)
To-Do List
read through Doug's Algorithm paper[http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2860133/]read through AssemblyManager coderead through ClothoHelp[http://wiki.bu.edu/ece-clotho/index.php/Main_Page]edit main page to allow for click-able imagesbreak main pagefix link-caption centering issue
read through kirigami/TB paperread through Friedland abstract/paper[6/7/2011]
- PuppetShow Thought Project
read through Puppeteer/PuppetShow powerpoint[6/7/2011]- PuppetShow takes some version of the protocol graph produced via the Assembly Planner
- The relationships between parts within the protocol graphs are assumed to be labeled with protocol names
- The PuppetShow itself should link the protocol names to libraries and help generate the necessary Puppeteer code
- PuppetShow takes some version of the protocol graph produced via the Assembly Planner
read through Puppeteer/related abstract[6/7/2011]peruse GroovyScripter code/structureread up on JEditorPane first!![6/8/2011]need to find out how to properly import Python shell to run Python code[6/9/2011]- able to successfully incorporate python interpreting using native Python 3.2 installation!
attempt to mimic GUI and incorporate Python-parsing?[6/8/2011], [6/9/2011]- able to successfully mimic the JEditorPane!!
figure out how to seamlessly integrate Python script-compiling within fluid GUI[6/9/2011]- design aforementioned fluid GUI
- currently working on implementing fluid menu bar design for easy navigation and script creation/manipulation
Using the Clotho platform [4], we develop two applications for specifying and executing biological protocols. The Assembly Planner [5] is the end-point of an endto- end design workflow [3] that produces an assembly plan for synthetic biological devices, with each assembly step annotated with the name of a biological protocol. Each such protocol itself may be fully specified using another Clotho application called PuppetShow, which provides an environment for writing, testing, debugging, and executing biological protocols. --A Software Stack for Specification and Robotic Execution of Protocols for Synthetic Biological Engineering
The Day-to-Day
[6/8/2011] Finally got the plugin to properly load off of the Clotho dashboard. It runs as a JEditorPane with (I assume; has yet to be verified) Python-syntax-highlighting. Next up is finding a way to properly integrate a "run" method for parsing/executing Python scripts made within this GUI.
Got a bare-bones menu-bar working. It doesn't have any functioning implementations, yet. However I'm going to stop here until I can figure out how to parse Python and run it from the GUI window.
[6/9/2011] I started looking into incorporating the Jython library/software package to assist with compiling Python scripts, etc. However, as per Swapnil's advice, instead I shifted to just trying to run the Python scripts directly off of a native Python installation. This makes sense since one would currently need to have Python installed to work with Puppeteer, so executing/compiling the Python scripts/code should work.
Right now I am trying to properly code the runtime-execution of python to parse some sample code within a test file that I placed within the App directory. My thoughts for future development involves saving the written code to a temp file and executing the code when the user chooses the run command.
Update: The App can now fully parse text written within the custom-JEditorPane and interpret it using the native Python 3.2 installation. I have currently abandoned any interest in incorporating Jython and will focus more on GUI design and simple file-manipulation.
The Backburner
- Protocol Graphs Thought Project
- Ideally, we should have a protocol graph that would be a generic form of managing an arbitrary combination of protocols.
- The protocol graph should contain vertices, which are either operands or protocols/operations.
- The graph should also connect operands to protocols.
- Given access to a library of protocol specifications, one should be able to give an expression or an explicit protocol graph for parsing purposes.
- One should be able to use PuppetShow (see powerpoint) to create an implicit protocol graph.
- One should be able to reconfigure protocol graphs for optimization, etc.
- Questions
- How do we want to construct this graph?
- Does the user input an expression?
- Should we have an interactive GUI to help user create custom protocol graphs?