{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,21]],"date-time":"2025-02-21T16:32:15Z","timestamp":1740155535064,"version":"3.37.3"},"reference-count":128,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2019,2,5]],"date-time":"2019-02-05T00:00:00Z","timestamp":1549324800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0\/"},{"start":{"date-parts":[[2019,2,5]],"date-time":"2019-02-05T00:00:00Z","timestamp":1549324800000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/501100002241","name":"Japan Science and Technology Agency","doi-asserted-by":"publisher","award":["JPMJPR15D8"],"award-info":[{"award-number":["JPMJPR15D8"]}],"id":[{"id":"10.13039\/501100002241","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001691","name":"Japan Society for the Promotion of Science","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100001691","id-type":"DOI","asserted-by":"publisher"}]},{"name":"RIKEN ACCC"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["J Cheminform"],"published-print":{"date-parts":[[2019,12]]},"DOI":"10.1186\/s13321-019-0332-0","type":"journal-article","created":{"date-parts":[[2019,2,5]],"date-time":"2019-02-05T00:04:37Z","timestamp":1549325077000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":5,"title":["Chemoinformatics and structural bioinformatics in OCaml"],"prefix":"10.1186","volume":"11","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-1377-944X","authenticated-orcid":false,"given":"Francois","family":"Berenger","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Kam Y. J.","family":"Zhang","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yoshihiro","family":"Yamanishi","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2019,2,5]]},"reference":[{"key":"332_CR1","doi-asserted-by":"publisher","unstructured":"Colmerauer A, Roussel P (1996) The birth of Prolog. In: History of programming languages\u2014II. ACM, New York, pp 331\u2013367. \n                    https:\/\/doi.org\/10.1145\/234286.1057820","DOI":"10.1145\/234286.1057820"},{"issue":"2","key":"332_CR2","doi-asserted-by":"publisher","first-page":"98","DOI":"10.1093\/comjnl\/32.2.98","volume":"32","author":"J Hughes","year":"1989","unstructured":"Hughes J (1989) Why functional programming matters. Comput J 32(2):98\u2013107. \n                    https:\/\/doi.org\/10.1093\/comjnl\/32.2.98","journal-title":"Comput J"},{"issue":"92\u2013C","key":"332_CR3","first-page":"0153","volume":"14","author":"P Hudak","year":"1994","unstructured":"Hudak P (1994) Haskell vs Ada vs C++ vs Awk vs... an experiment in software prototyping productivity. Contract 14(92\u2013C):0153","journal-title":"Contract"},{"key":"332_CR4","volume-title":"Four-fold increase in productivity and quality\u2014industrial-strength functional programming in telecom-class products","author":"U Wiger","year":"2001","unstructured":"Wiger U (2001) Four-fold increase in productivity and quality\u2014industrial-strength functional programming in telecom-class products. Ericsson Telecom Ab, Stockholm"},{"key":"332_CR5","unstructured":"Pavel Y (2018) Full support of OpenSMILES specification for Haskell. \n                    http:\/\/github.com\/zmactep\/smiles\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR6","unstructured":"A, JC (2018) OpenSMILES specification version 1.0, 2016-05-15. \n                    http:\/\/opensmiles.org\/opensmiles.html\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR7","unstructured":"Krzysztof L (2018) Haskell library for chemistry. \n                    http:\/\/github.com\/klangner\/radium\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR8","unstructured":"Stefan H (2018) Purely functional cheminformatics toolkit written in Scala. \n                    http:\/\/github.com\/stefan-hoeck\/chemf\n                    \n                  . Accessed 2018-12-01"},{"issue":"1","key":"332_CR9","doi-asserted-by":"publisher","first-page":"38","DOI":"10.1186\/1758-2946-4-38","volume":"4","author":"S H\u00f6ck","year":"2012","unstructured":"H\u00f6ck S, Riedl R (2012) chemf: a purely functional chemistry toolkit. J Cheminform 4(1):38. \n                    https:\/\/doi.org\/10.1186\/1758-2946-4-38","journal-title":"J Cheminform"},{"key":"332_CR10","unstructured":"Leroy X, Doligez D, Frisch A, Garrigue J, R\u00e9my D et al (2016) The OCaml system release 4.04: Documentation and user\u2019s manual, Inria. \n                    https:\/\/hal.inria.fr\/hal-00930213v3\/document"},{"key":"332_CR11","first-page":"29","volume":"146","author":"R Hindley","year":"1969","unstructured":"Hindley R (1969) The principal type-scheme of an object in combinatory logic. Trans Am Math Soc 146:29\u201360","journal-title":"Trans Am Math Soc"},{"issue":"3","key":"332_CR12","doi-asserted-by":"publisher","first-page":"348","DOI":"10.1016\/0022-0000(78)90014-4","volume":"17","author":"R Milner","year":"1978","unstructured":"Milner R (1978) A theory of type polymorphism in programming. J Comput Syst Sci 17(3):348\u2013375. \n                    https:\/\/doi.org\/10.1016\/0022-0000(78)90014-4","journal-title":"J Comput Syst Sci"},{"key":"332_CR13","volume-title":"Types and programming languages","author":"BC Pierce","year":"2002","unstructured":"Pierce BC (2002) Types and programming languages. MIT press, Cambridge"},{"issue":"1","key":"332_CR14","doi-asserted-by":"publisher","first-page":"60","DOI":"10.1186\/s13321-017-0248-5","volume":"9","author":"F Berenger","year":"2017","unstructured":"Berenger F, Vu O, Meiler J (2017) Consensus queries in ligand-based virtual screening experiments. J Cheminform 9(1):60. \n                    https:\/\/doi.org\/10.1186\/s13321-017-0248-5","journal-title":"J Cheminform"},{"key":"332_CR15","series-title":"LFP '90","doi-asserted-by":"publisher","first-page":"61","DOI":"10.1145\/91556.91592","volume-title":"Proceedings of the 1990 ACM conference on LISP and functional programming","author":"P Wadler","year":"1990","unstructured":"Wadler P (1990) Comprehending monads. In: Proceedings of the 1990 ACM conference on LISP and functional programming, LFP '90. ACM, New York, pp 61\u201378. \n                    https:\/\/doi.org\/10.1145\/91556.91592\n                    \n                   (ISBN: 0-89791-368-X)"},{"issue":"1","key":"332_CR16","doi-asserted-by":"publisher","first-page":"0","DOI":"10.1017\/S0956796803000315","volume":"13","author":"SL Peyton Jones","year":"2003","unstructured":"Peyton Jones SL (2003) Haskell 98: introduction. J Funct Program 13(1):0\u20136. \n                    https:\/\/doi.org\/10.1017\/S0956796803000315","journal-title":"J Funct Program"},{"key":"332_CR17","volume-title":"The Coq proof assistant reference manual: version 6.1","author":"B Barras","year":"1997","unstructured":"Barras B, Boutin S, Cornes C, Courant J, Filliatre J-C, Gimenez E, Herbelin H, Huet G, Munoz C, Murthy C et al (1997) The Coq proof assistant reference manual: version 6.1. INRIA, Paris"},{"key":"332_CR18","unstructured":"Brady E et al (2008) Idris, a language with dependent types. In: IFL 2008"},{"key":"332_CR19","volume-title":"Type-driven development with Idris","author":"E Brady","year":"2017","unstructured":"Brady E (2017) Type-driven development with Idris. Manning Publications, Shelter Island"},{"key":"332_CR20","series-title":"Lecture notes in computer science","doi-asserted-by":"publisher","first-page":"230","DOI":"10.1007\/978-3-642-04652-0_5","volume-title":"6th international school on advanced functional programming, AFP 2008","author":"U Norell","year":"2009","unstructured":"Norell U (2009) Dependently typed programming in Agda. In: Koopman PWM, Plasmeijer R, Swierstra SD (eds) 6th international school on advanced functional programming, AFP 2008. Lecture notes in computer science, vol 5832. Springer, Berlin, Heidelberg, pp 230\u2013266. \n                    https:\/\/doi.org\/10.1007\/978-3-642-04652-0_5"},{"key":"332_CR21","doi-asserted-by":"publisher","unstructured":"Mondet S, Aksoy BA, Rozenberg L, Hodes I, Hammerbacher J (2017) Bioinformatics workflow management with the Wobidisco ecosystem. \n                    https:\/\/doi.org\/10.1101\/213884","DOI":"10.1101\/213884"},{"key":"332_CR22","doi-asserted-by":"publisher","unstructured":"Rubinsteyn A, Kodysh J, Hodes I, Mondet S, Aksoy BA, Finnigan JP, Bhardwaj N, Hammerbacher J (2017) Computational pipeline for the PGV-001 neoantigen vaccine trial. \n                    https:\/\/doi.org\/10.1101\/174516","DOI":"10.1101\/174516"},{"key":"332_CR23","doi-asserted-by":"publisher","unstructured":"Rozenberg L, Hammerbacher J (2018) Prohlatype: a probabilistic framework for HLA typing. \n                    https:\/\/doi.org\/10.1101\/244962","DOI":"10.1101\/244962"},{"issue":"20","key":"332_CR24","doi-asserted-by":"publisher","first-page":"3929","DOI":"10.1093\/bioinformatics\/bti645","volume":"21","author":"M Jambon","year":"2005","unstructured":"Jambon M, Andrieu O, Combet C, Del\u00e9age G, Delfaud F, Geourjon C (2005) The SuMo server: 3D search for protein functional sites. Bioinformatics 21(20):3929\u20133930. \n                    https:\/\/doi.org\/10.1093\/bioinformatics\/bti645","journal-title":"Bioinformatics"},{"key":"332_CR25","doi-asserted-by":"publisher","unstructured":"Berenger F, Simoncini D, Voet A, Shrestha R, Zhang KYJ (2018) Fragger: a protein fragment picker for structural queries [version 2; referees: 2 approved]. F1000Research 6(1722). \n                    https:\/\/doi.org\/10.12688\/f1000research.12486.2","DOI":"10.12688\/f1000research.12486.2"},{"issue":"10","key":"332_CR26","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1371\/journal.pone.0075762","volume":"8","author":"A Voet","year":"2013","unstructured":"Voet A, Berenger F, Zhang KYJ (2013) Electrostatic similarities between protein and small molecule ligands facilitate the design of protein\u2013protein interaction inhibitors. PLoS ONE 8(10):1\u20139. \n                    https:\/\/doi.org\/10.1371\/journal.pone.0075762","journal-title":"PLoS ONE"},{"issue":"4","key":"332_CR27","doi-asserted-by":"publisher","first-page":"363","DOI":"10.1007\/s10822-013-9702-2","volume":"28","author":"ARD Voet","year":"2014","unstructured":"Voet ARD, Kumar A, Berenger F, Zhang KYJ (2014) Combining in silico and in cerebro approaches for virtual screening and pose prediction in SAMPL4. J Comput Aided Mol Des 28(4):363\u2013373. \n                    https:\/\/doi.org\/10.1007\/s10822-013-9702-2","journal-title":"J Comput Aided Mol Des"},{"issue":"1","key":"332_CR28","doi-asserted-by":"publisher","first-page":"23","DOI":"10.1186\/1758-2946-6-23","volume":"6","author":"F Berenger","year":"2014","unstructured":"Berenger F, Voet A, Lee XY, Zhang KYJ (2014) A rotation-translation invariant molecular descriptor of partial charges and its use in ligand-based virtual screening. J Cheminform 6(1):23. \n                    https:\/\/doi.org\/10.1186\/1758-2946-6-23","journal-title":"J Cheminform"},{"key":"332_CR29","doi-asserted-by":"publisher","first-page":"17","DOI":"10.1007\/978-3-540-74407-8_3","volume-title":"CONCUR 2007\u2014concurrency theory","author":"V Danos","year":"2007","unstructured":"Danos V, Feret J, Fontana W, Harmer R, Krivine J (2007) Rule-based modelling of cellular signalling. In: Caires L, Vasconcelos VT (eds) CONCUR 2007\u2014concurrency theory. Springer, Berlin, pp 17\u201341"},{"issue":"16","key":"332_CR30","doi-asserted-by":"publisher","first-page":"6453","DOI":"10.1073\/pnas.0809908106","volume":"106","author":"J Feret","year":"2009","unstructured":"Feret J, Danos V, Krivine J, Harmer R, Fontana W (2009) Internal coarse-graining of molecular systems. Proc Natl Acad Sci 106(16):6453\u20136458. \n                    https:\/\/doi.org\/10.1073\/pnas.0809908106","journal-title":"Proc Natl Acad Sci"},{"issue":"3","key":"332_CR31","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1371\/journal.pone.0032032","volume":"7","author":"EJ Deeds","year":"2012","unstructured":"Deeds EJ, Krivine J, Feret J, Danos V, Fontana W (2012) Combinatorial complexity and compositional drift in protein interaction networks. PLoS ONE 7(3):1\u201314. \n                    https:\/\/doi.org\/10.1371\/journal.pone.0032032","journal-title":"PLoS ONE"},{"issue":"13","key":"332_CR32","doi-asserted-by":"publisher","first-page":"583","DOI":"10.1093\/bioinformatics\/bty272","volume":"34","author":"P Boutillier","year":"2018","unstructured":"Boutillier P, Maasha M, Li X, Medina-Abarca HF, Krivine J, Feret J, Cristescu I, Forbes AG, Fontana W (2018) The Kappa platform for rule-based modeling. Bioinformatics 34(13):583\u2013592. \n                    https:\/\/doi.org\/10.1093\/bioinformatics\/bty272","journal-title":"Bioinformatics"},{"issue":"12","key":"332_CR33","doi-asserted-by":"publisher","first-page":"11295","DOI":"10.1007\/s11356-017-9809-4","volume":"25","author":"S Charles","year":"2018","unstructured":"Charles S, Veber P, Delignette-Muller ML (2018) MOSAIC: a web-interface for statistical analyses in ecotoxicology. Environ Sci Pollut Res 25(12):11295\u201311302. \n                    https:\/\/doi.org\/10.1007\/s11356-017-9809-4","journal-title":"Environ Sci Pollut Res"},{"key":"332_CR34","unstructured":"INRIA (2018) Caml Consortium. \n                    http:\/\/caml.inria.fr\/consortium\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR35","doi-asserted-by":"crossref","first-page":"3","DOI":"10.1007\/978-3-319-17524-9_1","volume-title":"NASA formal methods","author":"C Calcagno","year":"2015","unstructured":"Calcagno C, Distefano D, Dubreil J, Gabi D, Hooimeijer P, Luca M, O\u2019Hearn P, Papakonstantinou I, Purbrick J, Rodriguez D (2015) Moving fast with software verification. In: Havelund K, Holzmann G, Joshi R (eds) NASA formal methods. Springer, Cham, pp 3\u201311"},{"key":"332_CR36","doi-asserted-by":"publisher","unstructured":"Peyton\u00a0Jones S, Eber J-M, Seward J (2000) Composing contracts: an adventure in financial engineering (functional pearl). In: Proceedings of the fifth ACM SIGPLAN international conference on functional programming. ICFP \u201900. ACM, New York, NY, USA, pp 280\u2013292. \n                    https:\/\/doi.org\/10.1145\/351240.351267","DOI":"10.1145\/351240.351267"},{"key":"332_CR37","unstructured":"Min\u00e9 A, Mauborgne L, Rival X, Feret J, Cousot P, Kastner D, Wilhelm S, Ferdinand C (2016) Taking static analysis to the next level: proving the absence of run-time errors and data races with Astr\u00e9e. In: Eighth European congress on embedded real time software and systems, Toulouse, France"},{"key":"332_CR38","doi-asserted-by":"publisher","unstructured":"Ball T, Rajamani SK (2002) The slam project: debugging system software via static analysis. In: Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on principles of programming languages. POPL \u201902. ACM, New York, NY, USA, pp 1\u20133. \n                    https:\/\/doi.org\/10.1145\/503272.503274","DOI":"10.1145\/503272.503274"},{"key":"332_CR39","unstructured":"Pierce BC, Vouillon J (2004) What\u2019s in unison? A formal specification and reference implementation of a file synchronizer. Technical report MS-CIS-03-36, Department of Computer and Information Science, University of Pennsylvania"},{"key":"332_CR40","unstructured":"Le\u00a0Fessant F, Patarin S (2003) MLdonkey, a multi-network peer-to-peer file-sharing program. Research report RR-4797. INRIA"},{"key":"332_CR41","unstructured":"INRIA (2018) The Coq proof assistant. \n                    http:\/\/coq.inria.fr\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR42","doi-asserted-by":"publisher","first-page":"169","DOI":"10.1145\/301618.301661","volume-title":"Proceedings of the ACM SIGPLAN 1999 conference on programming language design and implementation, PLDI '99","author":"M Frigo","year":"1999","unstructured":"Frigo M (1999) A fast Fourier transform compiler. In: Proceedings of the ACM SIGPLAN 1999 conference on programming language design and implementation, PLDI '99, vol 34. ACM, New York, pp 169\u2013180. \n                    https:\/\/doi.org\/10.1145\/301618.301661"},{"key":"332_CR43","unstructured":"Chailloux E, Manoury P, Pagano B (2007) D\u00e9veloppement d'applications avec Objective Caml. O\u2019REILLY & Associates, France. \n                    https:\/\/caml.inria.fr\/pub\/docs\/oreilly-book\/ocaml-ora-book.pdf\n                    \n                   (ISBN: 2-84177-121-0)"},{"key":"332_CR44","volume-title":"Real World OCaml: functional programming for the masses","author":"Y Minsky","year":"2013","unstructured":"Minsky Y, Madhavapeddy A, Hickey J (2013) Real World OCaml: functional programming for the masses. O\u2019Reilly Media Inc, Sebastopol"},{"key":"332_CR45","volume-title":"OCaml from the very beginning","author":"J Whitington","year":"2013","unstructured":"Whitington J (2013) OCaml from the very beginning. Coherent Press, Birmingham"},{"key":"332_CR46","unstructured":"Emmanuel C, Pascal M, Bruno P (2018) Developing applications with objective Caml. \n                    http:\/\/caml.inria.fr\/pub\/docs\/oreilly-book\/html\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR47","unstructured":"Minsky Y, Madhavapeddy A, Hickey J (2018) Real World OCaml. \n                    http:\/\/v1.realworldocaml.org\/v1\/en\/html\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR48","unstructured":"Xavier L, Didier R (2018) Unix system programming in OCaml. \n                    http:\/\/ocaml.github.io\/ocamlunix\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR49","volume-title":"Learn you a Haskell for great good!","author":"M Lipovaca","year":"2011","unstructured":"Lipovaca M (2011) Learn you a Haskell for great good!. No Starch Press, San Francisco"},{"key":"332_CR50","volume-title":"Structure and interpretation of computer programs","author":"H Abelson","year":"1996","unstructured":"Abelson H, Sussman GJ, Sussman J (1996) Structure and interpretation of computer programs, 2nd edn. The MIT Press, Cambridge","edition":"2"},{"key":"332_CR51","unstructured":"Yaron M (2018) Caml trading. \n                    www.youtube.com\/watch?v=hKcOkWzj0_s\n                    \n                  . Accessed 2018-12-01"},{"issue":"4","key":"332_CR52","doi-asserted-by":"publisher","first-page":"553","DOI":"10.1017\/S095679680800676X","volume":"18","author":"Y Minsky","year":"2008","unstructured":"Minsky Y, Weeks S (2008) Caml trading\u2014experiences with functional programming on wall street. J Funct Program 18(4):553\u2013564. \n                    https:\/\/doi.org\/10.1017\/S095679680800676X","journal-title":"J Funct Program"},{"issue":"11","key":"332_CR53","doi-asserted-by":"publisher","first-page":"53","DOI":"10.1145\/2018396.2018413","volume":"54","author":"Y Minsky","year":"2011","unstructured":"Minsky Y (2011) OCaml for the Masses. Commun ACM 54(11):53\u201358. \n                    https:\/\/doi.org\/10.1145\/2018396.2018413","journal-title":"Commun ACM"},{"key":"332_CR54","unstructured":"OCamlPRO (2018) Try OCaml. \n                    http:\/\/try.ocamlpro.com\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR55","unstructured":"Xavier L, Damien D, Alain F, Jacques G, Didier R, J\u00e9r\u00f4me V (2018) The OCaml system release 4.07. \n                    https:\/\/caml.inria.fr\/pub\/docs\/manual-ocaml\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR56","unstructured":"Xavier L, Damien D, Alain F, Jacques G, Didier R, J\u00e9r\u00f4me V (2018) The standard library. \n                    http:\/\/caml.inria.fr\/pub\/docs\/manual-ocaml\/stdlib.html\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR57","unstructured":"Simon C (2018) OCaml-containers. \n                    http:\/\/github.com\/c-cube\/ocaml-containers\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR58","unstructured":"Simon C (2018) OCaml-containers documentation. \n                    http:\/\/simon.cedeela.fr\/ocaml-containers\/last\/containers\/index.html\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR59","unstructured":"community O (2018) OCaml batteries included. \n                    https:\/\/github.com\/ocaml-batteries-team\/batteries-included\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR60","unstructured":"community, O (2018) Batteries user guide. \n                    http:\/\/ocaml-batteries-team.github.io\/batteries-included\/hdoc2\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR61","unstructured":"Street J (2018) Janestreet core. \n                    https:\/\/github.com\/janestreet\/core\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR62","unstructured":"Street J (2018) Jane street core documentation. \n                    http:\/\/ocaml.janestreet.com\/ocaml-core\/latest\/doc\/core\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR63","doi-asserted-by":"publisher","first-page":"631","DOI":"10.1109\/TSE.1983.235263","volume":"5","author":"I Kalantari","year":"1983","unstructured":"Kalantari I, McDonald G (1983) A data structure and an algorithm for the nearest point problem. IEEE Trans Softw Eng 5:631\u2013634","journal-title":"IEEE Trans Softw Eng"},{"key":"332_CR64","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-77974-2","volume-title":"Computational geometry: algorithms and applications","author":"M Berg","year":"2008","unstructured":"Berg M, Cheong O, Kreveld M, Overmars M (2008) Computational geometry: algorithms and applications, 3rd edn. Springer, Santa Clara","edition":"3"},{"issue":"4","key":"332_CR65","doi-asserted-by":"publisher","first-page":"175","DOI":"10.1016\/0020-0190(91)90074-R","volume":"40","author":"JK Uhlmann","year":"1991","unstructured":"Uhlmann JK (1991) Satisfying general proximity\/similarity queries with metric trees. Inf Process Lett 40(4):175\u2013179. \n                    https:\/\/doi.org\/10.1016\/0020-0190(91)90074-R","journal-title":"Inf Process Lett"},{"key":"332_CR66","unstructured":"Yianilos PN (1993) Data structures and algorithms for nearest neighbor search in general metric spaces. In: Proceedings of the fourth annual ACM-SIAM symposium on discrete algorithms. SODA \u201993. SIAM, Philadelphia, pp 311\u2013321"},{"issue":"6","key":"332_CR67","doi-asserted-by":"publisher","first-page":"1933","DOI":"10.1021\/ci034150f","volume":"43","author":"H Xu","year":"2003","unstructured":"Xu H, Agrafiotis DK (2003) Nearest neighbor search in general metric spaces using a tree data structure with a simple heuristic. J Chem Inf Comput Sci 43(6):1933\u20131941. \n                    https:\/\/doi.org\/10.1021\/ci034150f","journal-title":"J Chem Inf Comput Sci"},{"key":"332_CR68","unstructured":"Francois B (2018) Bisector tree implementation in OCaml. \n                    http:\/\/github.com\/UnixJunkie\/bisec-tree\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR69","unstructured":"Dean J, Ghemawat S (2004) MapReduce: simplified data processing on large clusters. In: Proceedings of the 6th conference on symposium on opearting systems design & implementation, vol 6. OSDI\u201904. USENIX Association, Berkeley, CA, USA, p 10"},{"key":"332_CR70","unstructured":"OCamlPRO (2018) OCaml package manager. \n                    http:\/\/opam.ocaml.org\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR71","unstructured":"community, O (2018) OPAM repository. \n                    http:\/\/github.com\/ocaml\/opam-repository\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR72","unstructured":"Louis G (2018) opam-bundle. \n                    http:\/\/github.com\/AltGr\/opam-bundle\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR73","unstructured":"J\u00e9r\u00e9mie D (2018) Universal toplevel for OCaml. \n                    http:\/\/github.com\/ocaml-community\/utop\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR74","unstructured":"Fr\u00e9d\u00e9ric B, Thomas R (2018) Context sensitive completion for OCaml in Vim and Emacs. \n                    http:\/\/github.com\/ocaml\/merlin\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR75","unstructured":"Microsoft (2018) Visual studio code. \n                    https:\/\/code.visualstudio.com\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR76","unstructured":"GitHub (2018) A hackable text editor. \n                    http:\/\/atom.io\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR77","unstructured":"OCamlPRO (2018) Indentation tool for OCaml. \n                    http:\/\/github.com\/OCamlPro\/ocp-indent\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR78","unstructured":"Hugo H (2018) Auto-formatter for OCaml code. \n                    http:\/\/github.com\/ocaml-ppx\/ocamlformat\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR79","unstructured":"B\u00e9renger F (2016) Nouveaux Logiciels Pour la Biologie Structurale Computationnelle et la Ch\u00e9moinformatique. PhD thesis, Paris, CNAM"},{"issue":"3","key":"332_CR80","doi-asserted-by":"publisher","first-page":"707","DOI":"10.1021\/ci020345w","volume":"43","author":"J-L Faulon","year":"2003","unstructured":"Faulon J-L, Visco DP, Pophale RS (2003) The signature molecular descriptor. 1. Using extended valence sequences in QSAR and QSPR studies. J Chem Inf Comput Sci 43(3):707\u2013720. \n                    https:\/\/doi.org\/10.1021\/ci020345w","journal-title":"J Chem Inf Comput Sci"},{"issue":"6","key":"332_CR81","first-page":"359","volume":"4","author":"G Moreau","year":"1980","unstructured":"Moreau G, Broto P (1980) The autocorrelation of a topological structure: a new molecular descriptor. Nouv J Chim 4(6):359\u2013360","journal-title":"Nouv J Chim"},{"issue":"4","key":"332_CR82","doi-asserted-by":"publisher","first-page":"433","DOI":"10.1080\/10618600.1994.10474656","volume":"3","author":"MP Wand","year":"1994","unstructured":"Wand MP (1994) Fast computation of multivariate kernel estimators. J Comput Graph Stat 3(4):433\u2013445. \n                    https:\/\/doi.org\/10.1080\/10618600.1994.10474656","journal-title":"J Comput Graph Stat"},{"key":"332_CR83","unstructured":"Francois B (2018) Chemoinformatics tool for ligand-based virtual screening. \n                    http:\/\/github.com\/UnixJunkie\/ACPC\n                    \n                  . Accessed 2018-12-01"},{"issue":"23","key":"332_CR84","doi-asserted-by":"publisher","first-page":"6789","DOI":"10.1021\/jm0608356","volume":"49","author":"N Huang","year":"2006","unstructured":"Huang N, Shoichet BK, Irwin JJ (2006) Benchmarking sets for molecular docking. J Med Chem 49(23):6789\u20136801","journal-title":"J Med Chem"},{"key":"332_CR85","doi-asserted-by":"publisher","DOI":"10.5281\/zenodo.1006728","author":"F Berenger","year":"2017","unstructured":"Berenger F (2017) UnixJunkie\/consent: release for publication. J Cheminform. \n                    https:\/\/doi.org\/10.5281\/zenodo.1006728","journal-title":"J Cheminform"},{"key":"332_CR86","unstructured":"Francois B (2018) Ligand-based virtual screening with consensus queries. \n                    http:\/\/github.com\/UnixJunkie\/consent\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR87","doi-asserted-by":"publisher","first-page":"665","DOI":"10.1093\/nar\/gkh381","volume":"32","author":"TJ Dolinsky","year":"2004","unstructured":"Dolinsky TJ, Nielsen JE, McCammon JA, Baker NA (2004) PDB2PQR: an automated pipeline for the setup of Poisson\u2013Boltzmann electrostatics calculations. Nucleic Acids Res 32:665\u2013667. \n                    https:\/\/doi.org\/10.1093\/nar\/gkh381","journal-title":"Nucleic Acids Res"},{"issue":"18","key":"332_CR88","doi-asserted-by":"publisher","first-page":"10037","DOI":"10.1073\/pnas.181342398","volume":"98","author":"NA Baker","year":"2001","unstructured":"Baker NA, Sept D, Joseph S, Holst MJ, McCammon JA (2001) Electrostatics of nanosystems: application to microtubules and the ribosome. Proc Natl Acad Sci 98(18):10037\u201310041. \n                    https:\/\/doi.org\/10.1073\/pnas.181342398","journal-title":"Proc Natl Acad Sci"},{"key":"332_CR89","doi-asserted-by":"publisher","unstructured":"Berenger F (2017) UnixJunkie\/fragger: release for Publication in F1000R. \n                    https:\/\/doi.org\/10.5281\/zenodo.877320","DOI":"10.5281\/zenodo.877320"},{"key":"332_CR90","unstructured":"Francois B (2018) A protein fragments picker. \n                    http:\/\/github.com\/UnixJunkie\/fragger\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR91","unstructured":"Gouy I (2018) Debian language shootout. \n                    http:\/\/benchmarksgame-team.pages.debian.net\/benchmarksgame\n                    \n                  . Accessed 2018-12-01"},{"issue":"10","key":"332_CR92","doi-asserted-by":"publisher","first-page":"1348","DOI":"10.1093\/bioinformatics\/btq140","volume":"26","author":"SJ Swamidass","year":"2010","unstructured":"Swamidass SJ, Azencott C-A, Daily K, Baldi P (2010) A CROC stronger than ROC: measuring, visualizing and optimizing early retrieval. Bioinformatics 26(10):1348\u20131356. \n                    https:\/\/doi.org\/10.1093\/bioinformatics\/btq140","journal-title":"Bioinformatics"},{"issue":"14","key":"332_CR93","doi-asserted-by":"publisher","first-page":"6582","DOI":"10.1021\/jm300687e","volume":"55","author":"MM Mysinger","year":"2012","unstructured":"Mysinger MM, Carchia M, Irwin JJ, Shoichet BK (2012) Directory of useful decoys, enhanced (DUD-E): better ligands and decoys for better benchmarking. J Med Chem 55(14):6582\u20136594. \n                    https:\/\/doi.org\/10.1021\/jm300687e","journal-title":"J Med Chem"},{"key":"332_CR94","doi-asserted-by":"publisher","unstructured":"Danelutto M, Cosmo RD (2012) A minimal disruption skeleton experiment: seamless map and reduce embedding in OCaml. Procedia Comput Sci 9:1837\u20131846. \n                    https:\/\/doi.org\/10.1016\/j.procs.2012.04.202\n                    \n                  . Proceedings of the International Conference on Computational Science, ICCS 2012","DOI":"10.1016\/j.procs.2012.04.202"},{"key":"332_CR95","unstructured":"Francois B (2018) parany. \n                    http:\/\/github.com\/UnixJunkie\/parany\n                    \n                  . Accessed 2018-12-01"},{"issue":"4","key":"332_CR96","doi-asserted-by":"publisher","first-page":"583","DOI":"10.1007\/s10766-013-0261-x","volume":"42","author":"M Bourgoin","year":"2014","unstructured":"Bourgoin M, Chailloux E, Lamotte J-L (2014) Efficient abstractions for GPGPU programming. Int J Parallel Program 42(4):583\u2013600. \n                    https:\/\/doi.org\/10.1007\/s10766-013-0261-x","journal-title":"Int J Parallel Program"},{"key":"332_CR97","doi-asserted-by":"publisher","first-page":"86","DOI":"10.1007\/978-3-319-07151-0_6","volume-title":"Functional and logic programming","author":"O Kiselyov","year":"2014","unstructured":"Kiselyov O (2014) The design and implementation of BER MetaOCaml. In: Codish M, Sumii E (eds) Functional and logic programming. Springer, Cham, pp 86\u2013102"},{"key":"332_CR98","series-title":"Lecture notes in computer science","doi-asserted-by":"crossref","first-page":"30","DOI":"10.1007\/978-3-540-25935-0_3","volume-title":"Domain-specific program generation, international seminar, Dagstuhl Castle, Germany, March 23\u201328, 2003","author":"W Taha","year":"2004","unstructured":"Taha W (2004) A gentle introduction to multi-stage programming. In: Lengauer C, Batory DS, Consel C, Odersky M (eds) Domain-specific program generation, international seminar, Dagstuhl Castle, Germany, March 23\u201328, 2003. Lecture notes in computer science, vol 3016. Springer, Berlin, Heidelberg, pp 30\u201350"},{"key":"332_CR99","unstructured":"Le\u00a0Gall S (2018) ounit. \n                    http:\/\/github.com\/gildor478\/ounit\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR100","unstructured":"Cruanes S (2018) qcheck. \n                    https:\/\/github.com\/c-cube\/qcheck\n                    \n                  . Accessed 2018-12-01"},{"issue":"1","key":"332_CR101","doi-asserted-by":"publisher","first-page":"31","DOI":"10.1021\/ci00057a005","volume":"28","author":"D Weininger","year":"1988","unstructured":"Weininger D (1988) SMILES, a chemical language and information system. 1. Introduction to methodology and encoding rules. J Chem Inf Comput Sci 28(1):31\u201336. \n                    https:\/\/doi.org\/10.1021\/ci00057a005","journal-title":"J Chem Inf Comput Sci"},{"key":"332_CR102","unstructured":"Daylight Chemical Information Systems Inc. SMARTS. \n                    http:\/\/www.daylight.com\/dayhtml\/doc\/theory\/theory.smarts.html.\n                    \n                   Accessed 1 Dec 2018"},{"issue":"1","key":"332_CR103","doi-asserted-by":"publisher","first-page":"33","DOI":"10.1186\/s13321-017-0220-4","volume":"9","author":"EL Willighagen","year":"2017","unstructured":"Willighagen EL, Mayfield JW, Alvarsson J, Berg A, Carlsson L, Jeliazkova N, Kuhn S, Pluskal T, Rojas-Chert\u00f3 M, Spjuth O, Torrance G, Evelo CT, Guha R, Steinbeck C (2017) The Chemistry Development Kit (CDK) v2.0: atom typing, depiction, molecular formulas, and substructure searching. J Cheminform 9(1):33. \n                    https:\/\/doi.org\/10.1186\/s13321-017-0220-4","journal-title":"J Cheminform"},{"key":"332_CR104","unstructured":"contributors C (2018) Chemistry development kit. \n                    http:\/\/cdk.github.io\n                    \n                  . Accessed 2018-12-01"},{"issue":"1","key":"332_CR105","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1186\/s13321-014-0037-3","volume":"6","author":"P Tosco","year":"2014","unstructured":"Tosco P, Stiefl N, Landrum G (2014) Bringing the MMFF force field to the rdkit: implementation and validation. J Cheminform 6(1):37. \n                    https:\/\/doi.org\/10.1186\/s13321-014-0037-3","journal-title":"J Cheminform"},{"issue":"1","key":"332_CR106","doi-asserted-by":"publisher","first-page":"33","DOI":"10.1186\/1758-2946-3-33","volume":"3","author":"NM O\u2019Boyle","year":"2011","unstructured":"O\u2019Boyle NM, Banck M, James CA, Morley C, Vandermeersch T, Hutchison GR (2011) Open babel: an open chemical toolbox. J Cheminform 3(1):33. \n                    https:\/\/doi.org\/10.1186\/1758-2946-3-33","journal-title":"J Cheminform"},{"key":"332_CR107","volume-title":"The art of unix programming","author":"ES Raymond","year":"2004","unstructured":"Raymond ES (2004) The art of unix programming. Addison-Wesley Professional, Indianapolis"},{"key":"332_CR108","unstructured":"wwwPDB (2008) Protein data bank contents guide: atomic coordinate entry format description version 3.30. wwwPDB, Piscataway, NJ, USA"},{"key":"332_CR109","volume-title":"Tripos Mol2 file format","author":"I Tripos","year":"2005","unstructured":"Tripos I (2005) Tripos Mol2 file format. Tripos Inc, St. Louis"},{"key":"332_CR110","first-page":"2825","volume":"12","author":"F Pedregosa","year":"2011","unstructured":"Pedregosa F, Varoquaux G, Gramfort A, Michel V, Thirion B, Grisel O, Blondel M, Prettenhofer P, Weiss R, Dubourg V, Vanderplas J, Passos A, Cournapeau D, Brucher M, Perrot M, Duchesnay E (2011) Scikit-learn: machine learning in Python. J Mach Learn Res 12:2825\u20132830","journal-title":"J Mach Learn Res"},{"issue":"1","key":"332_CR111","doi-asserted-by":"publisher","first-page":"5","DOI":"10.1023\/A:1010933404324","volume":"45","author":"L Breiman","year":"2001","unstructured":"Breiman L (2001) Random forests. Mach Learn 45(1):5\u201332. \n                    https:\/\/doi.org\/10.1023\/A:1010933404324","journal-title":"Mach Learn"},{"key":"332_CR112","unstructured":"Bastian T (2018) ORandForest. \n                    http:\/\/github.com\/tobast\/ORandForest\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR113","unstructured":"Wang L (2017) Owl: a general-purpose numerical library in OCaml. CoRR. \n                    arXiv:1707.09616"},{"key":"332_CR114","unstructured":"Wang L (2018) Owl-OCaml scientific and engineering computing. \n                    http:\/\/github.com\/owlbarn\/owl\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR115","unstructured":"Abadi M, Barham P, Chen J, Chen Z, Davis A, Dean J, Devin M, Ghemawat S, Irving G, Isard M, Kudlur M, Levenberg J, Monga R, Moore S, Murray DG, Steiner B, Tucker P, Vasudevan V, Warden P, Wicke M, Yu Y, Zheng X (2016) Tensorflow: a system for large-scale machine learning. In: Proceedings of the 12th USENIX conference on operating systems design and implementation. OSDI\u201916. USENIX Association, Berkeley, CA, USA, pp 265\u2013283"},{"key":"332_CR116","unstructured":"Mazare L (2018) tensorflow-ocaml. \n                    http:\/\/github.com\/LaurentMazare\/tensorflow-ocaml\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR117","unstructured":"Mazare L (2018) ocaml-torch. \n                    http:\/\/github.com\/LaurentMazare\/ocaml-torch\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR118","unstructured":"R Core Team (2018) R: a language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria"},{"key":"332_CR119","unstructured":"Berenger F (2018) orsvm\\_e1071 - OCaml wrapper to R packages e1071 and svmpath. \n                    http:\/\/github.com\/UnixJunkie\/orsvm-e1071\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR120","unstructured":"Berenger F (2018) orrandomForest\u2014classification or regression using random forests. \n                    http:\/\/github.com\/UnixJunkie\/orrandomForest\n                    \n                  . Accessed 2018-12-01"},{"key":"332_CR121","unstructured":"Berenger F (2018) cpm\u2014classification performance metrics library. \n                    http:\/\/github.com\/UnixJunkie\/cpmlib\n                    \n                  . Accessed 2018-12-01"},{"issue":"7","key":"332_CR122","doi-asserted-by":"publisher","first-page":"1145","DOI":"10.1016\/S0031-3203(96)00142-2","volume":"30","author":"AP Bradley","year":"1997","unstructured":"Bradley AP (1997) The use of the area under the ROC curve in the evaluation of machine learning algorithms. Pattern Recogn 30(7):1145\u20131159. \n                    https:\/\/doi.org\/10.1016\/S0031-3203(96)00142-2","journal-title":"Pattern Recogn"},{"issue":"1","key":"332_CR123","doi-asserted-by":"publisher","first-page":"7","DOI":"10.1186\/s13321-016-0189-4","volume":"9","author":"JCD Lopes","year":"2017","unstructured":"Lopes JCD, dos Santos FM, Martins-Jos\u00e9 A, Augustyns K, De Winter H (2017) The power metric: a new statistically robust enrichment-type metric for virtual screening applications with early recovery capability. J Cheminform 9(1):7. \n                    https:\/\/doi.org\/10.1186\/s13321-016-0189-4","journal-title":"J Cheminform"},{"issue":"2","key":"332_CR124","doi-asserted-by":"publisher","first-page":"488","DOI":"10.1021\/ci600426e","volume":"47","author":"J-F Truchon","year":"2007","unstructured":"Truchon J-F, Bayly CI (2007) Evaluating virtual screening methods: good and bad metrics for the early recognition problem. J Chem Inf Model 47(2):488\u2013508. \n                    https:\/\/doi.org\/10.1021\/ci600426e","journal-title":"J Chem Inf Model"},{"key":"332_CR125","unstructured":"Leroy X, R\u00e9my D (2014) Unix system programming in OCaml"},{"key":"332_CR126","unstructured":"UCSF (2018) Chimera BILD file format. \n                    http:\/\/www.cgl.ucsf.edu\/chimera\/docs\/UsersGuide\/bild.html\n                    \n                  . Accessed 2018-12-01"},{"issue":"13","key":"332_CR127","doi-asserted-by":"publisher","first-page":"1605","DOI":"10.1002\/jcc.20084","volume":"25","author":"EF Pettersen","year":"2004","unstructured":"Pettersen EF, Goddard TD, Huang CC, Couch GS, Greenblatt DM, Meng EC, Ferrin TE (2004) UCSF Chimera\u2014a visualization system for exploratory research and analysis. J Comput Chem 25(13):1605\u20131612. \n                    https:\/\/doi.org\/10.1002\/jcc.20084","journal-title":"J Comput Chem"},{"issue":"8","key":"332_CR128","doi-asserted-by":"publisher","first-page":"951","DOI":"10.1002\/spe.2187","volume":"44","author":"J Vouillon","year":"2014","unstructured":"Vouillon J, Balat V (2014) From bytecode to JavaScript: the Js of ocaml compiler. Softw Pract Exp 44(8):951\u2013972. \n                    https:\/\/doi.org\/10.1002\/spe.2187","journal-title":"Softw Pract Exp"}],"container-title":["Journal of Cheminformatics"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1186\/s13321-019-0332-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1186\/s13321-019-0332-0\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1186\/s13321-019-0332-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,5,16]],"date-time":"2020-05-16T22:00:27Z","timestamp":1589666427000},"score":1,"resource":{"primary":{"URL":"https:\/\/jcheminf.biomedcentral.com\/articles\/10.1186\/s13321-019-0332-0"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,2,5]]},"references-count":128,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2019,12]]}},"alternative-id":["332"],"URL":"https:\/\/doi.org\/10.1186\/s13321-019-0332-0","relation":{},"ISSN":["1758-2946"],"issn-type":[{"type":"electronic","value":"1758-2946"}],"subject":[],"published":{"date-parts":[[2019,2,5]]},"assertion":[{"value":"6 September 2018","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"22 January 2019","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"5 February 2019","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}],"article-number":"10"}}