Bio++: efficient extensible libraries and tools for computational molecular evolution

Mol Biol Evol. 2013 Aug;30(8):1745-50. doi: 10.1093/molbev/mst097. Epub 2013 May 21.

Abstract

Efficient algorithms and programs for the analysis of the ever-growing amount of biological sequence data are strongly needed in the genomics era. The pace at which new data and methodologies are generated calls for the use of pre-existing, optimized-yet extensible-code, typically distributed as libraries or packages. This motivated the Bio++ project, aiming at developing a set of C++ libraries for sequence analysis, phylogenetics, population genetics, and molecular evolution. The main attractiveness of Bio++ is the extensibility and reusability of its components through its object-oriented design, without compromising the computer-efficiency of the underlying methods. We present here the second major release of the libraries, which provides an extended set of classes and methods. These extensions notably provide built-in access to sequence databases and new data structures for handling and manipulating sequences from the omics era, such as multiple genome alignments and sequencing reads libraries. More complex models of sequence evolution, such as mixture models and generic n-tuples alphabets, are also included.

Keywords: C++ libraries; bioinformatics; models of sequence evolution; phylogeny.

MeSH terms

  • Algorithms
  • Computational Biology* / methods
  • Evolution, Molecular*
  • Genomics / methods
  • Humans
  • Internet
  • Software*