comparison staging/index.html @ 518:2bd6b00f831f

Web site: book cover and links to buy
author Adam Chlipala <adam@chlipala.net>
date Fri, 13 Dec 2013 10:32:51 -0500
parents 136d4b84eb96
children 2bcc4e7976d7
comparison
equal deleted inserted replaced
517:136d4b84eb96 518:2bd6b00f831f
5 <title>Certified Programming with Dependent Types</title> 5 <title>Certified Programming with Dependent Types</title>
6 </head><body> 6 </head><body>
7 <h1>Certified Programming with Dependent Types</h1> 7 <h1>Certified Programming with Dependent Types</h1>
8 <h2><a href="http://adam.chlipala.net/">Adam Chlipala</a></h2> 8 <h2><a href="http://adam.chlipala.net/">Adam Chlipala</a></h2>
9 9
10 <div class="summary"> 10 <div class="summary" style="overflow: hidden">
11 <p>This is the web site for an in-progress textbook about practical engineering with <a href="http://coq.inria.fr/">the Coq proof assistant</a>. The focus is on building programs with proofs of correctness, using dependent types and scripted proof automation.</p> 11 <img src="cover.jpg" width="300" height="390" align="left" style="margin-right: 30px" alt="book cover">
12
13 <p>This is the web site for a textbook about practical engineering with <a href="http://coq.inria.fr/">the Coq proof assistant</a>. The focus is on building programs with proofs of correctness, using dependent types and scripted proof automation.</p>
12 14
13 <p>I'm following an unusual philosophy in this book, so it may be of interest even to long-time Coq users. At the same time, I hope that it provides an easier introduction for newcomers, since short and automated proofs are the starting point, rather than an advanced topic.</p> 15 <p>I'm following an unusual philosophy in this book, so it may be of interest even to long-time Coq users. At the same time, I hope that it provides an easier introduction for newcomers, since short and automated proofs are the starting point, rather than an advanced topic.</p>
14 16
15 <p>Interested in beta testing this book in a course you're teaching? Please <a href="mailto:adamc@csail.mit.edu">drop me a line</a>!</p> 17 <p>Interested in using this book in a course you're teaching? Please <a href="mailto:adamc@csail.mit.edu">drop me a line</a>!</p>
16 18
17 <p>A traditional hardcopy version will appear from <a href="http://mitpress.mit.edu/">MIT Press</a> Real Soon Now<a href="http://www.catb.org/jargon/html/R/Real-Soon-Now.html">*</a>.</p> 19 <p>A traditional hardcopy version is available from <a href="http://mitpress.mit.edu/">MIT Press</a>, who have graciously agreed to allow distribution of free versions online indefinitely, minus the benefits of the Press' copy editing!</p>
20
21 <h2>Buy a Copy in Print</h2>
22 <ul>
23 <a href="http://www.amazon.com/gp/product/0262026651/ref=as_li_tf_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=0262026651&linkCode=as2&tag=adamchli-20">From Amazon.com</a><img src="http://ir-na.amazon-adsystem.com/e/ir?t=adamchli-20&l=as2&o=1&a=0262026651" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /><br/>
24 <a href="http://mitpress.mit.edu/books/certified-programming-dependent-types">The MIT Press page for the book
25 </ul>
18 </div> 26 </div>
19 27
20 <div class="project"> 28 <div class="project">
21 <h2>Distribution Formats</h2> 29 <h2>Distribution Formats (free version)</h2>
22 <ul> 30 <ul>
23 <li> <a href="cpdt.pdf">Latest draft as a PDF</a></li> 31 <li> <a href="cpdt.pdf">Latest draft as a PDF</a></li>
24 <li> <a href="html/toc.html">Online version of latest draft, as hyperlinked HTML</a> [note that the author focuses on the PDF version and doesn't make an effort to keep the HTML version particularly pleasant to use]</li> 32 <li> <a href="html/toc.html">Online version of latest draft, as hyperlinked HTML</a> [note that the author focuses on the PDF version and doesn't make an effort to keep the HTML version particularly pleasant to use]</li>
25 <li> <a href="cpdt.tgz">Tarball of Coq source to latest draft</a></li> 33 <li> <a href="cpdt.tgz">Tarball of Coq source to latest draft</a></li>
26 <li> <a href="cpdtlib.tgz">Tarball of a few generally useful library modules from the book</a> (which are released under an open-source license, while the book generally isn't)</li> 34 <li> <a href="cpdtlib.tgz">Tarball of a few generally useful library modules from the book</a> (which are released under an open-source license, while the book generally isn't)</li>
42 <li>CS252 at Harvard <a href="http://www.cs.harvard.edu/~adamc/cpdt/">(Fall 2008)</a></li> 50 <li>CS252 at Harvard <a href="http://www.cs.harvard.edu/~adamc/cpdt/">(Fall 2008)</a></li>
43 </ul> 51 </ul>
44 </div> 52 </div>
45 53
46 <div class="project"> 54 <div class="project">
47 <h2>Status</h2> 55 <h2>Old versions</h2>
48
49 <p>Updated on November 16, 2009 with a version retargeted to Coq 8.2pl1, then again on January 14, 2011 to support Coq 8.3, and then again on March 29, 2012 to support Coq 8.4 beta. On August 25, 2011, I started passes through all chapters, with an eye toward getting ready both for <a href="http://stellar.mit.edu/S/course/6/fa11/6.892/">my fall class</a> and publication by MIT Press. I added bibliographic references and index entries, along with the usual tweaks and improvements. In late Summer 2012, the mode switched to final proofreading by others.</p>
50
51 <p>The current version is effectively a beta release. It is intended to be consistent, self-contained, and useful, both for individual study and for introductory theorem-proving classes aimed at students with ML or Haskell experience and with basic familiarity with programming language theory.</p>
52
53 <p>The main omissions have to do with some supporting resources that I didn't get around to implementing when I used this book for a course. Some suggested exercises are present (now only in a supplementary file), but only at points where I was looking to assign an exercise in the course. Some chapters are lacking the annotations used to build reduced versions of their source code, where some definitions and proofs have been elided; the course instructor can step through such a file, guiding class participants in filling in the omitted code.</p>
54 56
55 <p>Previous versions included a final Part on programming language semantics in particular. I have decided to separate that part out. I plan to put it up as a supplementary resource eventually; for now it is simply removed. (It remains present in the <a href="repo">Mercurial</a> history.)</p> 57 <p>Previous versions included a final Part on programming language semantics in particular. I have decided to separate that part out. I plan to put it up as a supplementary resource eventually; for now it is simply removed. (It remains present in the <a href="repo">Mercurial</a> history.)</p>
56 </div> 58 </div>
57 59
58 </body></html> 60 </body></html>