From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id OAA00300; Fri, 3 May 2002 14:57:38 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id OAA00239 for ; Fri, 3 May 2002 14:57:38 +0200 (MET DST) Received: from smtp2.cswv.com (smtp2.cswv.com [4.17.129.20]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id g43CvaX11893 for ; Fri, 3 May 2002 14:57:37 +0200 (MET DST) Received: from smtp2.cswv.com ([10.2.3.6]) by smtp2.cswv.com with Microsoft SMTPSVC(5.5.1877.197.19); Fri, 3 May 2002 08:57:30 -0400 Received: FROM exchange1.cswv.com BY smtp2.cswv.com ; Fri May 03 08:57:30 2002 -0400 Received: by exchange1.cswv.com with Internet Mail Service (5.5.2653.19) id ; Fri, 3 May 2002 08:57:43 -0400 Message-ID: From: "Krishnaswami, Neel" To: caml-list@inria.fr Subject: Re: [Caml-list] "high end" type theory for working programmers? Date: Fri, 3 May 2002 08:57:42 -0400 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain; charset="iso-8859-1" Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Michael Vanier [mailto:mvanier@cs.caltech.edu] wrote: > > I highly recommend Benjamin Pierce's new book "Types in Programming > Languages" from MIT press. It's very well-written, covers much of the > material you describe, and includes implementations in ocaml ;-) Let me second this recommendation. It's a great book. I'm a regular programmer and I found it extremely useful. I think that Olivier Danvy's "Functional Unparsing" paper is one of the best illustrations of why this stuff is useful for regular programming. There's nothing more practical in the world than printing text, and here he uses continuation-passing style, combinators, higher-order functions, and all that stuff to derive a blisteringly fast statically-typed printf. It's amazing. (And you can make the library nearly perfect to use if you use labels and optional arguments.) This technique is apparently an instance of a more general technique that Zhe Yang describes in his paper "Encoding Types in ML-like Languages", at . -- Neel Krishnaswami neelk@cswcasa.com ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners