annotate staging/index.html @ 346:5d85de065540

Pass through Coinductive up to PL example
author Adam Chlipala <adam@chlipala.net>
date Sun, 23 Oct 2011 13:33:46 -0400
parents 4a432659a698
children 03e200599633
rev   line source
adamc@39 1 <html>
adamc@39 2 <head>
adamc@268 3 <link rel="alternate" type="application/rss+xml" title="Updates RSS Feed" href="updates.rss">
adamc@39 4 <link rel="stylesheet" type="text/css" href="/style.css">
adamc@39 5 <title>Certified Programming with Dependent Types</title>
adamc@39 6 </head><body>
adamc@39 7 <h1>Certified Programming with Dependent Types</h1>
adamc@69 8 <h2><a href="http://adam.chlipala.net/">Adam Chlipala</a></h2>
adamc@39 9
adamc@39 10 <div class="summary">
adamc@39 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>
adamc@267 12
adamc@267 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>
adamc@267 14
adamc@267 15 <p>The final part of the book applies the earlier parts' tools to examples in programming languages and compilers.</p>
adamc@267 16
adam@309 17 <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>
adam@299 18
adam@309 19 <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>
adamc@39 20 </div>
adamc@39 21
adamc@39 22 <div class="project">
adamc@226 23 <h2>Distribution Formats</h2>
adamc@39 24 <ul>
adamc@39 25 <li> <a href="cpdt.pdf">Latest draft as a PDF</a></li>
adamc@39 26 <li> <a href="html/toc.html">Online version of latest draft, as hyperlinked HTML</a></li>
adamc@39 27 <li> <a href="cpdt.tgz">Tarball of Coq source to latest draft</a></li>
adam@321 28 <li> <a href="repo">Public, read-only Mercurial repository</a></li>
adamc@268 29 <li> <a href="updates.rss">RSS feed of updates</a></li>
adamc@226 30 </ul>
adamc@226 31 </div>
adamc@226 32
adamc@226 33 <div class="project">
adamc@226 34 <h2>Used by:</h2>
adamc@226 35 <ul>
adam@308 36 <li>6.892 at MIT <a href="http://stellar.mit.edu/S/course/6/fa11/6.892/">(Fall 2011)</a></li>
adam@308 37 <li>CS252 at Harvard <a href="http://www.cs.harvard.edu/~adamc/cpdt/">(Fall 2008)</a></li>
adamc@226 38 </ul>
adamc@226 39 </div>
adamc@226 40
adamc@226 41 <div class="project">
adamc@226 42 <h2>Status</h2>
adamc@226 43
adam@308 44 <p>Updated on November 16, 2009 with a version retargeted to Coq 8.2pl1, and then again on January 14, 2011 to support Coq 8.3. On August 25, 2011, I've 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'm adding bibliographic references, index entries, and additional exercises, along with the usual tweaks and improvements.</p>
adamc@231 45
adamc@266 46 <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>
adamc@266 47
adamc@266 48 <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, 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>
adamc@267 49
adam@332 50 <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>
adamc@39 51 </div>
adamc@39 52
adamc@39 53 </body></html>