CANDO: A Compiled Programming Language for Computer-Aided Nanomaterial Design and Optimization Based on Clasp Common Lisp

CANDO is a compiled programming language designed for rapid prototyping and design of macromolecules and nanometer-scale materials. CANDO provides functionality to write programs that assemble atoms and residues into new molecules and construct three-dimensional coordinates for them. CANDO also provides functionality for searching molecules for substructures, automatically assigning atom types, identifying rings, carrying out conformational searching, and automatically determining stereochemistry, among other things. CANDO extends the Clasp implementation of the dynamic language Common Lisp. CANDO provides classes for representing atoms, residues, molecules and aggregates (collections of molecules) as primitive objects that are implemented in C++ and subject to automatic memory management, like every other object within the language. CANDO inherits all of the capabilities of Clasp, including the easy incorporation of C++ libraries using a C++ template programming library. This automatically builds wrap- per code to expose the C++ functionality to the CANDO Common Lisp environment and the use of the LLVM library[1] to generate fast native code. A version of CANDO can be built that incorporates the Open Message Passing Interface C++ library[2], which allows CANDO to be run on supercomputers, in order to automatically setup, start, and analyze molecular mechanics simulations on large parallel computers. CANDO is currently available under the LGPL 2.0 license.

[1]  C. Schafmeister,et al.  Synthesis of Spiroligomer-Containing Macrocycles. , 2015, The Journal of organic chemistry.

[2]  Matthew J. Mio,et al.  A field guide to foldamers. , 2001, Chemical reviews.

[3]  K. Houk,et al.  Hydrophobic substituent effects on proline catalysis of aldol reactions in water. , 2012, The Journal of organic chemistry.

[4]  Michael J. Zdilla,et al.  Acceleration of an Aromatic Claisen Rearrangement via a Designed Spiroligozyme Catalyst that Mimics the Ketosteroid Isomerase Catalytic Dyad , 2014, Journal of the American Chemical Society.

[5]  Conrad C. Huang,et al.  UCSF Chimera—A visualization system for exploratory research and analysis , 2004, J. Comput. Chem..

[6]  William L Todsen ChemDoodle 6.0 , 2014, J. Chem. Inf. Model..

[7]  M. Feitelson,et al.  A Spiroligomer α-Helix Mimic That Binds HDM2, Penetrates Human Cells and Stabilizes HDM2 in Cell Culture , 2012, PloS one.

[8]  Alan Edelman,et al.  Julia: A Fresh Approach to Numerical Computing , 2014, SIAM Rev..

[9]  K. Houk,et al.  Spiroligozymes for transesterifications: design and relationship of structure to activity. , 2012, Journal of the American Chemical Society.

[10]  N. Mills ChemDraw Ultra 10.0 CambridgeSoft, 100 CambridgePark Drive, Cambridge, MA 02140. www.cambridgesoft.com. Commercial Price: $1910 for download, $2150 for CD-ROM; Academic Price: $710 for download, $800 for CD-ROM. , 2006 .

[11]  P. Kollman,et al.  A Second Generation Force Field for the Simulation of Proteins, Nucleic Acids, and Organic Molecules , 1995 .

[12]  Hans-Juergen Boehm Simple garbage-collector-safety , 1996, PLDI '96.

[13]  Eric Jones,et al.  SciPy: Open Source Scientific Tools for Python , 2001 .

[14]  S. Nash A survey of truncated-Newton methods , 2000 .

[15]  Richard L. Graham,et al.  Open MPI: A Flexible High Performance MPI , 2005, PPAM.

[16]  C. Schafmeister,et al.  Shape-programmable macromolecules. , 2008, Accounts of chemical research.