From: james woodyatt <jhw@wetware.com>
To: The Caml Trade <caml-list@inria.fr>
Subject: [Caml-list] release: cf-0.1 (pagoda core foundation)
Date: Fri, 16 Apr 2004 21:40:49 -0700 [thread overview]
Message-ID: <669B1F9A-9029-11D8-B425-000A958FF2FE@wetware.com> (raw)
everyone--
I am releasing an update to the Core Foundation library of my Pagoda
project (which contains other foundation libraries yet unreleased).
The big deal is that I fixed the Cf library so it builds and works on
Suse Linux 9.0 as well as Mac OS X 10.3, and the socket extensions now
contain support for UDP (both IPv4 and IPv6, as well as both unicast
and multicast). The license is *still* the 2-clause BSD-style (I *do*
live in San Francisco, you know— the neighborhood has a reputation to
preserve).
As before, the new distribution is available at either of the following
URL's:
<http://www.wetware.com/jhw/src/pagoda/cf-0.1.tar.bz2>
<http://www.wetware.com/jhw/src/pagoda/cf-0.1.tar.gz>
And the online documentation (generated by ocamldoc) can be found here:
<http://www.wetware.com/jhw/src/pagoda/doc/>
There is still no programmer's guide. If people start using this
library, then maybe I'll write one. As far as I can tell, nobody else
is using this library yet. (If the terms of the BSD license are a
problem for you, then I'm willing to negotiate.)
----- README -----
Highlighted features include:
- Functional streams and stream processors (extended).
- Functional bootstrapped skew-binomial heap.
- Functional red-black binary tree (associative array).
- Functional sets 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.
- Extensions for I/O event multiplexing (with Unix.select).
Note: see the ISSUES file for a list of open problems in this release.
===== New for Version 0.1 =====
Highlights of the changes:
+ Compile and pass self-tests on Suse Linux 9.0.
+ Unified [sequence] and [accumulate] monad functions in [Cf_seq].
+ Added [Cf_exnopt] module with a simple convenience type.
+ New monadic constructors for [Cf_seq] and [Cf_flow] types.
+ Moderate overhaul of [Cf_gadget] (fix bugs, design problems).
+ Fix portability bugs in [Cf_socket] and cognates.
+ Add support for UDP, IP multicast and network interface selection.
+ Fix bug in [Cf_poll.idle] event polling (and give a timestamp).
+ Slightly better self-tests for [Cf_socket].
Note: see the CHANGES file for technical details about these changes.
===== Required Components =====
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 without warnings and self-tests on
Suse Linux 9.0 on x86-32. Other platforms with POSIX-like environments
should require only a minimal porting effort.
One major open issue: the extended socket interface is broken under
WIN32.
(The author invites help porting the library to other environments.)
===== Building =====
No 'configure' script is provided. Compile the library with:
$ make default
Compile both bytecode and native versions with:
$ make default opt
Execute tests for byte and native versions with:
$ make test test.opt
Install the library with ocamlfind using:
$ make install
Uninstall the library with ocamlfind using:
$ make uninstall
Make the reference documentation with ocamldoc using:
$ make doc
--j h woodyatt <jhw@wetware.com>
San Francisco, CA
2004-04-16
-------------------
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
reply other threads:[~2004-04-17 4:40 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=669B1F9A-9029-11D8-B425-000A958FF2FE@wetware.com \
--to=jhw@wetware.com \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox