Organization Acknowledgements
Senior Personnel Postdocs/Grad Students All Personnel by Institution
Collaborations
Presentations Publications
Community Software Morphology Databases Sequence Databases ATol

CIPRES Application

The CIPRES application combines a flexible user interface generating tool (Guigen), a service registry and communications library that allows the user to assemble services from legacy programs and newly created modules into workflows that create useful new functionalities. The initial release, as proof-of-concept will support parsimony tree-searching using recursive iterative DCM3 Rec-I-DCM3 [PDF] ).

CIPRES Communications Library

The CIPRES application is built on top of a library that allows services written in different languages or running on different machines to cooperate with each other. The architecture reflects many of the lessons learned from the Mesquite project. Unlike Mesquite, the CIPRES library will support a wide variety of programming languages (Java, C, C++, Python at a minimum, we are hoping to support Perl as well).

Having a rich library makes the functionality of CIPRES available to a variety of front-ends. The CIPRES interface utilizes upon on-the-fly generation of JAVA user interfaces to expose its software modules, enabling straightforward integration of CIPRES modules into other Java programs (we have tsted this by writing a Mesquite module that employs the CIPRES rec-I-DCM3). A Python interface to CIPRES will allow algorithm developers to script complex tasks that use CIPRES modules in a high level language. A Perl interface that can be used in similar ways is under development.

Inter-module Communication using the CIPRES Library

The inter-module communication portion of the CIPRES library is built upon the well-established CORBA specification. One of the goals of the library development is to hide much of the complexity of CORBA from biologists who are interested in contributing code that performs phylogenetically useful functions. Current efforts are geared towards adding new functionality to the library and the creation of a software development kit to enable application developers to easily use the software libraries. Future plans include the addition of interface for Web Services. Developers interested in using the library should check back here for the publication of the CIPRES API, which is expected in late 2006. Developers interested in using the library should check back here for the publication of the CIPRES API. If you interested in the current state of the library or would like to see the pre-release API contact project lead or Mark Holder or SDSC lead Terri Liebowitz.