Abstract
BackgroundOCaml is a functional programming language with strong static types, Hindley–Milner type inference and garbage collection. In this article, we share our experience in prototyping chemoinformatics and structural bioinformatics software in OCaml.ResultsFirst, we introduce the language, list entry points for chemoinformaticians who would be interested in OCaml and give code examples. Then, we list some scientific open source software written in OCaml. We also present recent open source libraries useful in chemoinformatics. The parallelization of OCaml programs and their performance is also shown. Finally, tools and methods useful when prototyping scientific software in OCaml are given.ConclusionsIn our experience, OCaml is a programming language of choice for method development in chemoinformatics and structural bioinformatics.
Highlights
There are several schools of thought in computer programming
OCaml in chemoinformatics and structural bioinformatics We list some open source OCaml software that resulted from research in chemoinformatics and structural bioinformatics [79]
Scientific software prototyping in OCaml In an academic research setting, it is common for a software project to be severely under staffed, compared to industrial standards, i.e. a single person might be in charge of the full software life-cycle
Summary
There are several schools of thought in computer programming. Each school is represented by several programming languages and some languages are multi-paradigm.In declarative languages (like SQL), a programmer writes a kind of mathematical specification of what to compute, and the compiler will automatically derive a program implementing this specification. There are several schools of thought in computer programming. Each school is represented by several programming languages and some languages are multi-paradigm. In declarative languages (like SQL), a programmer writes a kind of mathematical specification of what to compute, and the compiler will automatically derive a program implementing this specification. Prolog [1], is such a programming language where the specification is given as a collection of logic predicates. In imperative programming, the programmer writes in extensive details how to compute the result he wants. OCaml is a functional programming language with strong static types, Hindley–Milner type inference and garbage collection. We share our experience in prototyping chemoinformatics and structural bioinformatics software in OCaml
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.