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 HAA11229; Fri, 30 Jul 2004 07:33:22 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id HAA11767 for ; Fri, 30 Jul 2004 07:33:21 +0200 (MET DST) X-SPAM-Warning: Sending machine is listed in blackholes.five-ten-sg.com Received: from wetware.com (wetware.wetware.com [199.108.16.1]) by nez-perce.inria.fr (8.12.10/8.12.10) with ESMTP id i6U5XJEV028882 for ; Fri, 30 Jul 2004 07:33:20 +0200 Received: from [208.177.152.17] (helo=[10.0.1.9]) by wetware.com with esmtp (Exim 4.20) id 1BqQ19-0002y1-Ac for caml-list@inria.fr; Thu, 29 Jul 2004 22:33:19 -0700 Mime-Version: 1.0 (Apple Message framework v618) Content-Transfer-Encoding: quoted-printable Message-Id: Content-Type: text/plain; charset=WINDOWS-1252; format=flowed To: Ocaml Trade From: james woodyatt Subject: [Caml-list] release: cf-0.3 (pagoda core foundation) Date: Thu, 29 Jul 2004 22:33:19 -0700 X-Mailer: Apple Mail (2.618) X-Miltered: at nez-perce with ID 4109DD9F.002 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; woodyatt:01 jhw:01 wetware:01 cf-:99 immortal:99 film:99 api:01 tread:99 tweaks:01 3.07:01 omg:99 wetware:01 jhw:01 cf-:99 ocamldoc:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk everyone=97 I've been slow to follow through on my threats to release an update to=20= the Pagoda Core Foundation, and I apologize for that. My day job=20 interrupted=97=A0in the immortal words of Sascha in the classic film=20 _Casablanca_, "Yvonne, I love you, but he pays me." Once again, I tuned the existing API somewhat. Mostly in places where=20= I hope few people are likely to tread. I fixed a few bugs, and I made=20= some performance tweaks to some obscure corners of the library, e.g.=20 [Cf_gadget]. I also added some new modules (see below). I upgraded to Ocaml 3.08 recently, and the library works fine with that=20= version. It should still compile with 3.07+2, but I can't promise that=20= the next release won't use the cool new classless object feature in=20 3.08 (omg! that is totally wizard! thanks, inria!) As before, the new distribution is available at either of the following=20= URL's: And the online documentation (generated by ocamldoc) can be found here: (new = location!) There is still no programmer's guide. If I learn that people are using=20= this library, then maybe I'll write one. (All serious development=20 offers from commercial publishers will be seriously considered.) =3D=3D=3D=3D=3D Pagoda Core Foundation (cf) library =3D=3D=3D=3D=3D Highlighted features include: - Functional streams and stream processors (extended). - Functional bootstrapped skew-binomial heap. - Functional red-black binary tree (associative array). - Functional sets and maps based on red-black binary tree. - Functional real-time catenable deque. - Functional LL(x) parsing using state-exception monad. - Functional lazy deterministic finite automaton (DFA). - Functional lexical analyzer (using lazy DFA and monadic parser). - Functional substring list manipulation (message buffer chains). - Gregorian calendar date manipulation. - Standard time manipulation. - System time in Temps Atomique Internationale (TAI). - Unicode transcoding. - Extended socket interface (supports IPv6 and UDP w/multicast). - Universal resource identifier (URI) manipulation. - I/O event multiplexing (with Unix.select). Note: see the ISSUES file for a list of open problems in this release. =3D=3D=3D=3D=3D Required Components =3D=3D=3D=3D=3D This library requires the following external components: - Objective Caml (v3.07+2 or newer) - Findlib (tested with v0.8.1 and v1.0.4) Principle development was on Mac OS X 10.3. The final version of this library also compiled successfully and passed all self-tests without=20 warnings on Suse Linux 9.0 for x86-32. Other platforms with POSIX-like=20 environments should require only a minimal porting effort. One major open issue: the extended socket interface is broken under=20 WIN32. (The author invites help porting the library to other environments.) =3D=3D=3D=3D=3D Version 0.3 =3D=3D=3D=3D=3D Highlights of the changes: + Rewrite the scheduler in [Cf_gadget] so that it sucks less wind. The=20= kernel is now built entirely out of mutable structures, and we got rid of=20 the 'pin' type because we don't represent wires internally as integer keys in a=20= map. + Added [Cf_journal], a foundation for extensible diagnostic event=20 journaling inspired by Log4j from the Apache Foundation. (Look for a full suite=20= of extensions to be sold separately.) + Removed the [?xf] optional exception function from the=20 [Cf_lexer.create] function. Use a derived cursor class with an [error] method that can=20= be overridden for this=A0purpose. + Added [Cf_scan_parser], which scans an input sequence using the=20 [Scanf] module in the standard library. + Minor convenience functions added to [Cf_parser]. + Other bug fixes. (See CHANGES file.) --=20 j h woodyatt markets are only free to the people who own them.= ------------------- 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