title: Bio++: a set of C++ libraries for sequence analysis, phylogenetics, molecular evolution and population genetics.
abstract: BACKGROUND
  A large number of bioinformatics applications in the fields of bio-sequence analysis, molecular evolution and population genetics typically share input/output methods, data storage requirements and data analysis algorithms. Such common features may be conveniently bundled into re-usable libraries, which enable the rapid development of new methods and robust applications.
  
  
  RESULTS
  We present Bio++, a set of Object Oriented libraries written in C++. Available components include classes for data storage and handling (nucleotide/amino-acid/codon sequences, trees, distance matrices, population genetics datasets), various input/output formats, basic sequence manipulation (concatenation, transcription, translation, etc.), phylogenetic analysis (maximum parsimony, markov models, distance methods, likelihood computation and maximization), population genetics/genomics (diversity statistics, neutrality tests, various multi-locus analyses) and various algorithms for numerical calculus.
  
  
  CONCLUSIONS
  Implementation of methods aims at being both efficient and user-friendly. A special concern was given to the library design to enable easy extension and new methods development. We defined a general hierarchy of classes that allow the developer to implement its own algorithms while remaining compatible with the rest of the libraries. Bio++ source code is distributed free of charge under the CeCILL general public licence from its website http://kimura.univ-montp2.fr/BioPP.
authors.affiliation: CNRS UMR 5171--Génome, Populations, Interactions, Adaptation (GPIA), Université Montpellier 2, France. Julien.Dutheil@univ-montp2.fr
authors.forename: Julien
authors.initials: J
authors.lastname: Dutheil
authors.forename: Sylvain
authors.initials: S
authors.lastname: Gaillard
authors.forename: Eric
authors.initials: E
authors.lastname: Bazin
authors.forename: Sylvain
authors.initials: S
authors.lastname: Glémin
authors.forename: Vincent
authors.initials: V
authors.lastname: Ranwez
authors.forename: Nicolas
authors.initials: N
authors.lastname: Galtier
authors.forename: Khalid
authors.initials: K
authors.lastname: Belkhir
mesh_terms: D000465:Algorithms; D000595:Amino Acid Sequence; D000818:Animals; D019295:Computational Biology / Q000295:instrumentation / Q000379:methods*; D019143:Evolution, Molecular; D005828:Genetics, Population / Q000379:methods; D006801:Humans; D015233:Models, Statistical; D008969:Molecular Sequence Data; D010802:Phylogeny; D011381:Programming Languages; D017386:Sequence Homology, Amino Acid; D012984:Software