<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Mark Holder has updated the documentation for NCL, which should make using it in phylobase easier. Thanks, Mark!<div><br></div><div>Brian<br><div><br><div>Begin forwarded message:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>From: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Mark Holder &lt;<a href="mailto:mtholder@ku.edu">mtholder@ku.edu</a>&gt;</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>Date: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">March 27, 2010 3:17:38 PM EDT</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>To: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Brandon Chisham &lt;<a href="mailto:bchisham@cs.nmsu.edu">bchisham@cs.nmsu.edu</a>&gt;, "Brian O'Meara" &lt;<a href="mailto:bcomeara@nescent.org">bcomeara@nescent.org</a>&gt;, Dave Swofford &lt;<a href="mailto:david.swofford@duke.edu">david.swofford@duke.edu</a>&gt;, Paul Lewis &lt;<a href="mailto:paul.lewis@uconn.edu">paul.lewis@uconn.edu</a>&gt;, dz &lt;<a href="mailto:zwickl@ku.edu">zwickl@ku.edu</a>&gt;, Jeet Sukumaran &lt;<a href="mailto:jeet@ku.edu">jeet@ku.edu</a>&gt;, Paul van der Mark &lt;<a href="mailto:paulvdm@scs.fsu.edu">paulvdm@scs.fsu.edu</a>&gt;, Peter Cowan &lt;<a href="mailto:pdc@berkeley.edu">pdc@berkeley.edu</a>&gt;, Michael Sanderson &lt;<a href="mailto:sanderm@email.arizona.edu">sanderm@email.arizona.edu</a>&gt;, Arlin Stoltzfus &lt;<a href="mailto:arlin.stoltzfus@nist.gov">arlin.stoltzfus@nist.gov</a>&gt;, William Piel &lt;<a href="mailto:william.piel@yale.edu">william.piel@yale.edu</a>&gt;, Rutger Vos &lt;<a href="mailto:rutgeraldo@gmail.com">rutgeraldo@gmail.com</a>&gt;, David Maddison &lt;<a href="mailto:beetle@ag.arizona.edu">beetle@ag.arizona.edu</a>&gt;, Wayne Maddison &lt;<a href="mailto:wmaddisn@interchange.ubc.ca">wmaddisn@interchange.ubc.ca</a>&gt;, Hilmar Lapp &lt;<a href="mailto:hlapp@duke.edu">hlapp@duke.edu</a>&gt;, Fredrik Ronquist &lt;<a href="mailto:ronquist@csit.fsu.edu">ronquist@csit.fsu.edu</a>&gt;, John Huelsenbeck &lt;<a href="mailto:johnh@berkeley.edu">johnh@berkeley.edu</a>&gt;</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>Subject: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><b>Nexus class library v2.1 finally has some documentation about what has changed since v2.0</b></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div> </div><div>Hi NCL users (and other folks who may be interested in NEXUS parsing),<br><br>Short message:<br><span class="Apple-tab-span" style="white-space:pre">        </span>- I have finally forced myself to update the NCL documentation to reflect the changes to the API that accompanied the v2.1 branch.<br><br><span class="Apple-tab-span" style="white-space:pre">        </span>- Check out the high level overview at: <a href="http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/index.html">http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/index.html</a><br><br><span class="Apple-tab-span" style="white-space:pre">        </span>- Checkout the example code at:<br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">        </span><a href="http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/simpleNCLClient/simpleNCLClient.cpp">http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/simpleNCLClient/simpleNCLClient.cpp</a><br><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp;and its Makefile:<br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">        </span>http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/simpleNCLClient/Makefile<br><br><span class="Apple-tab-span" style="white-space:pre">        </span>- Please let me know if you find errors/typos in the docs ( mtholder@gmail.com ). &nbsp;I'm sure there are plenty of typos.<br><br><span class="Apple-tab-span" style="white-space:pre">        </span>- I pushed a new release to sourceforge (v2.1.11). Some of the docs refer to convenience functions that I just added to the library, so you'll need that version of the library.<br><br><br><br><br><br>Longer message:<br><br>As you probably know the currently-developed branches of NCL (https://ncl.svn.sourceforge.net/svnroot/ncl/branches/v2.1<br> and https://ncl.svn.sourceforge.net/svnroot/ncl/branches/v2.2) have changed considerably since version 2.0 of the library.<br><br>Paul Lewis is the author of NCL, and for a few years now I've been helping expand and maintain the library. Unfortunately, while Paul is very disciplined about documenting his code, I'm not a very good commenter/documenter. &nbsp;So the documentation has become much less useful of late because of my additions to the library.<br><br>We have really tried to make the new API backward compatible, so Paul's docs are still useful.<br><br>However:<br><span class="Apple-tab-span" style="white-space:pre">        </span>- The newer API can be considerably easier to use and more robust for complex NEXUS files (those which contain multiple instances of the same block).<br><br><span class="Apple-tab-span" style="white-space:pre">        </span>- There are some substantial performance improvements in the newer version. &nbsp;Admittedly most of our software is not limited by parsing time, but if you are writing an application that needs to crunch a lot of files or big files (or both) you should be using NCL v2.1.<br><br><span class="Apple-tab-span" style="white-space:pre">        </span>- v2.1 and later supports quite a few more commands and options (including Mesquite's LINK/TITLE syntax for dealing with multiple blocks, Mesquite's extension to the CHARSET commands, and MrBayes' extensions to NEXUS such as datatype=mixed and dataype=restriction in the FORMAT command).<br><br><span class="Apple-tab-span" style="white-space:pre">        </span>- v2.2 is now generated from v2.1 using a simple script. &nbsp;v2.2 provides support for SWIG bindings to NCL. &nbsp;Currently only python bindings have been tested, but other languages should be usable without too much tweaking.<br><br>So, I think that the jump from 2.0 to 2.1 is worth making.<br><br><br>I've just made a push on documenting the newer API at a high level. &nbsp;It is still a work in progress, but if you've been frustrated by my poor documentation of NCL, you should check out:<br><span class="Apple-tab-span" style="white-space:pre">        </span>http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/index.html<br><br>The logic of the newer API and new features are described much better than they have been before now.<br><br>You may also want to look at the at the example files at:<br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">        </span>http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/simpleNCLClient/simpleNCLClient.cpp<br><br>which can be built using the Makefile at:<br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">        </span>http://phylo.bio.ku.edu/ncldocs/v2.1/funcdocs/simpleNCLClient/Makefile<br>if you use g++, have installed NCL and put NCL_INSTALL_DIR in your env.<br><br><br>all the best,<br>Mark<br><br><br><br><br><br><br><br><br>Mark Holder<br><br>mtholder@ku.edu<br>http://phylo.bio.ku.edu/mark-holder<br><br>==============================================<br>Department of Ecology and Evolutionary Biology<br>University of Kansas<br>6031 Haworth Hall<br>1200 Sunnyside Avenue<br>Lawrence, Kansas 66045<br><br>lab phone: &nbsp;785.864.5789<br><br>fax (shared): 785.864.5860<br>==============================================<br><br><br><br><br><br><br><br><br></div></blockquote></div><br><div apple-content-edited="true"> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div>------------------------------------------------------</div><div>Brian O'Meara</div><div><a href="http://www.brianomeara.info">http://www.brianomeara.info</a></div><div>Assistant Prof.</div><div>Dept. Ecology &amp; Evolutionary Biology</div><div>U. of Tennessee, Knoxville</div></span></div></span> </div><br></div></body></html>