Hello,Here is the latest Caml Weekly News, for the week of March 31 to April 07, 2009.
1) OCaml-based logic and theorem proving book available 2) ocaml-autoconf macros 1.0 released 3) PowerPC 405 4) OCaml job at MyLife 5) OSpec 0.1.0 - BDD for OCaml 6) OCaml Batteries Included Beta 1 ======================================================================== 1) OCaml-based logic and theorem proving book availableArchive: <http://groups.google.com/group/fa.caml/browse_thread/thread/4c580a2ed0336eb0# >
------------------------------------------------------------------------ ** John Harrison announced: I'm pleased to announce the availability of my textbook on logic and automated theorem proving, in which all the major techniques that are described are also implemented as concrete OCaml code: Handbook of Practical Logic and Automated Reasoning John Harrison Cambridge University Press 2009 ISBN: 9780521899574 Publisher's Web page: <http://www.cambridge.org/9780521899574> Code and resources: <http://www.cl.cam.ac.uk/~jrh13/atp/> You can already buy the book in Europe, and it should be available elsewhere very soon, if it isn't already. Here's a table of contents: 1 Introduction 1.1 What is logical reasoning? 1.2 Calculemus! 1.3 Symbolism 1.4 Boole's algebra of logic 1.5 Syntax and semantics 1.6 Symbolic computation and OCaml 1.7 Parsing 1.8 Prettyprinting 2 Propositional Logic 2.1 The syntax of propositional logic 2.2 The semantics of propositional logic 2.3 Validity, satisfiability and tautology 2.4 The De Morgan laws, adequacy and duality 2.5 Simplification and negation normal form 2.6 Disjunctive and conjunctive normal forms 2.7 Applications of propositional logic 2.8 Definitional CNF 2.9 The Davis-Putnam procedure 2.10 Staalmarck's method 2.11 Binary Decision Diagrams 2.12 Compactness 3 First-order logic 3.1 First-order logic and its implementation 3.2 Parsing and printing 3.3 The semantics of first-order logic 3.4 Syntax operations 3.5 Prenex normal form 3.6 Skolemization 3.7 Canonical models 3.8 Mechanizing Herbrand's theorem 3.9 Unification 3.10 Tableaux 3.11 Resolution 3.12 Subsumption and replacement 3.13 Refinements of resolution 3.14 Horn clauses and Prolog 3.15 Model elimination 3.16 More first-order metatheorems 4 Equality 4.1 Equality axioms 4.2 Categoricity and elementary equivalence 4.3 Equational logic and completeness theorems 4.4 Congruence closure 4.5 Rewriting 4.6 Termination orderings 4.7 Knuth-Bendix completion 4.8 Equality elimination 4.9 Paramodulation 5 Decidable problems 5.1 The decision problem 5.2 The AE fragment 5.3 Miniscoping and the monadic fragment 5.4 Syllogisms 5.5 The finite model property 5.6 Quantifier elimination 5.7 Presburger arithmetic 5.8 The complex numbers 5.9 The real numbers 5.10 Rings, ideals and word problems 5.11 Groebner bases 5.12 Geometric theorem proving 5.13 Combining decision procedures 6 Interactive theorem proving 6.1 Human-oriented methods 6.2 Interactive provers and proof checkers 6.3 Proof systems for first-order logic 6.4 LCF implementation of first-order logic 6.5 Propositional derived rules 6.6 Proving tautologies by inference 6.7 First-order derived rules 6.8 First-order proof by inference 6.9 Interactive proof styles 7 Limitations 7.1 Hilbert's programme 7.2 Tarski's theorem on the undefinability of truth 7.3 Incompleteness of axiom systems 7.4 Goedel's incompleteness theorem 7.5 Definability and decidability 7.6 Church's theorem 7.7 Further limitative results 7.8 Retrospective: the nature of logic ======================================================================== 2) ocaml-autoconf macros 1.0 releasedArchive: <http://groups.google.com/group/fa.caml/browse_thread/thread/de36003728142dd0# >
------------------------------------------------------------------------ ** Richard Jones announced: We've just released the first version of the 'official' OCaml autoconf macros. Now there is a central place to collect autoconf macros related to detecting OCaml, OCaml tools and OCaml libraries. Everything has been relicensed under a simple 3-clause BSD license (or rewritten). Home: <https://forge.ocamlcore.org/projects/ocaml-autoconf/> Download: <https://forge.ocamlcore.org/frs/?group_id=69>Git repo: <http://git.ocamlcore.org/cgi-bin/gitweb.cgi?p=ocaml-autoconf/ocaml-autoconf.git;a=summary >
This version was made possible by ... * Olivier Andrieu * Jean-Christophe Fillia^tre * Richard W.M. Jones * Georges Mariano * Jim Meyering * Stefano Zacchiroli * OCamlForge, Debian & Red Hat Richard Jones & Stefano Zacchiroli ** Richard Jones later added: I also wrote something about how to get started with OCaml & autoconf:<http://rwmj.wordpress.com/2009/03/31/using-autoconf-for-ocaml- projects/>
======================================================================== 3) PowerPC 405Archive: <http://groups.google.com/group/fa.caml/browse_thread/thread/9f2d3beb16ac9e17# >
------------------------------------------------------------------------ ** Continuing the thread from last week, Xavier Clerc said: > I have built a MacOS-to-Linux cross-compiler last week.> I do confirm that the hard part is getting a cross-[g]cc up and running. > In fact, this is so tedious that I strongly encourage to resort to either
> a prepackaged cross-[g]cc (from binaries, from a Linux packaging > system, whatever), or to the excellent "crosstool" available at : > <http://www.kegel.com/crosstool/> > > On the OCaml side, there are very few things to do and they are > quite straightforward. First, you have to emulate the behaviour of> "./configure" by producing "config/m.h", "config/s.h", and "config/ Makefile" > by hand. This is easier than it may sound, just start from "config/ m-templ.h", > "config/s-temp.h", and "config/Makefile-templ" (these are comprehensively
> commented).> Then, you will have to slightly patch some Makefiles, and you are done.
>> I will setup a webpage with all the necessary steps and patches as soon > as I get my notes organized. This will allow us to share knowledge on the subject.
The build process I followed along with its accompagnying patch are available on the Gallium wiki at the following URL: <http://brion.inria.fr/gallium/index.php/CrossCompiler> This is clearly a very experimental draft that is still a bit hackish. All reports, both positive and negative are hence very welcome, in order to polish it up. ======================================================================== 4) OCaml job at MyLifeArchive: <http://groups.google.com/group/fa.caml/browse_thread/thread/c4dec74b901191b1# >
------------------------------------------------------------------------ ** Martin Jambon announced:MyLife, a people search engine, is seeking an engineer to join a back- end
software development team in Mountain View, California. The primary requirements for this position are: - proficiency in the OCaml programming language -- as most of the team's software is written in OCaml- proficiency in written English -- as much of our team communications (design
brainstorms, bug reports, etc.) are written- proficiency with Linux and shell scripting, build tools, and source control
tools The ideal candidate will have a good nose for hunting bugs, diagnosing performance problems, and reading colleagues' code.MyLife offers an informal work environment, and an opportunity to work on challenging engineering problems and information-retrieval algorithms over vast data, with high-impact on end-user experience. Our team was formed at Wink (acquired by MyLife this past summer) and includes contributors that are active in the OCaml community. If you're interested in applying for this
position, please contact the hiring manager at ocaml-...@mylife.com. ======================================================================== 5) OSpec 0.1.0 - BDD for OCamlArchive: <http://groups.google.com/group/fa.caml/browse_thread/thread/0f6381c631a275aa# >
------------------------------------------------------------------------ ** Andre Nathan announced:I'm happy to announce the first public release of OSpec, an RSpec- inspired
Behavior-Driven Development library for OCaml using a Camlp4 syntax extension. You can download this release from the ocamlcore forge at <http://forge.ocamlcore.org/projects/ospec/> or directly clone the repository from Github: <http://github.com/andrenth/ospec/tree/master> Here's a simple example of OSpec's syntax: describe "An even number" do it "should be divisible by two" do let divisible_by_two x = x mod 2 = 0 in 42 should be divisible_by_two done; (* or simply: *) it "should be divisible by two" do (42 mod 2) should = 0 done done OSpec also supports before/after blocks, helper functions to aid in specification writing, two different report formats and an extension to the "match" syntax so tha you can use it in your expectations. Please refer to the README file for details. ======================================================================== 6) OCaml Batteries Included Beta 1Archive: <http://groups.google.com/group/fa.caml/browse_thread/thread/4ef07fa09d08b662# >
------------------------------------------------------------------------ ** David Teller announced: After numerous sleepless nights, the OCaml Batteries Included team is happy to inform you of the release of version Beta 1. Barring any bugfix, this release should mark API and syntax freeze. You may download the source tarball from the Forge [1], read the on-line API documentation [2] or the extended release notes [3]. Thanks to all the members of the team. We're waiting for your feedback and bug reports! Cheers, David [1] <http://forge.ocamlcore.org/frs/?group_id=17&release_id=117> [2]<http://batteries.forge.ocamlcore.org/doc.preview:batteries-beta1/html/api/index.html >
[3]<http://dutherenverseauborddelatable.wordpress.com/2009/04/06/ocaml-batteries-included-beta-1/ >
** He later added: I should add that a GODI package has been uploaded. ** Stefano Zacchiroli then added: FWIW, a Debian package of beta 1 is available as well, in Debian/unstable (soon in Debian/testing): <http://packages.debian.org/sid/ocaml-batteries-included> ======================================================================== Using folding to read the cwn in vim 6+ ------------------------------------------------------------------------Here is a quick trick to help you read this CWN if you are viewing it using
vim (version 6 or greater). :set foldmethod=expr :set foldexpr=getline(v:lnum)=~'^=\\{78}$'?'<1':1 zM If you know of a better way, please let me know. ======================================================================== Old cwn ------------------------------------------------------------------------ If you happen to miss a CWN, you can send me a message(alan.schm...@polytechnique.org) and I'll mail it to you, or go take a look at
the archive (<http://alan.petitepomme.net/cwn/>) or the RSS feed of the archives (<http://alan.petitepomme.net/cwn/cwn.rss>). If you also wish to receive it every week by mail, you may subscribe online at <http://lists.idyll.org/listinfo/caml-news-weekly/> . ======================================================================== -- Alan Schmitt <http://alan.petitepomme.net/>The hacker: someone who figured things out and made something cool happen.
.O. ..O OOO
PGP.sig
Description: This is a digitally signed message part
_______________________________________________ caml-news-weekly mailing list caml-news-weekly@lists.idyll.org http://lists.idyll.org/listinfo/caml-news-weekly