New release: findlib, a library managing reusable software components (packages)

From: Gerd Stolpmann (Gerd.Stolpmann@darmstadt.netsurf.de)
Date: Sat Jun 26 1999 - 20:25:46 MET DST


From: Gerd Stolpmann <Gerd.Stolpmann@darmstadt.netsurf.de>
To: caml-list@inria.fr
Subject: New release: findlib, a library managing reusable software components (packages)
Date: Sat, 26 Jun 1999 20:25:46 +0200
Message-Id: <99062620352003.29265@schneemann>

I've released a new version (0.2) of "findlib", a package manager.
Detailed online documentation is available at

        http://people.darmstadt.netsurf.de/Gerd.Stolpmann/ocaml/projects/findlib

You can download "findlib" at

        http://people.darmstadt.netsurf.de/Gerd.Stolpmann/ocaml/

About findlib:

The "findlib" library provides a scheme to manage reusable software
components (packages), and includes tools that support this
scheme. Packages are collections of OCaml modules for which
metainformation can be stored. The packages are kept in the filesystem
hierarchy, but with strict directory structure. The library contains
functions to look the directory up that stores a package, to query
metainformation about a package, and to retrieve dependency
information about multiple packages. There is also a tool that allows
the user to enter queries on the command-line. In order to simplify
compilation and linkage, there are new frontends of the various OCaml
compilers that can directly deal with packages.

Together with the packages metainformation is stored. This includes a
version string, the archives the package consists of, and additional
linker options. Packages can also be dependent on other
packages. There is a query which finds out all predecessors of a list
of packages and sorts them topologically. The new compiler frontends
do this implicitly.

Metainformation can be conditional, i.e. depend on a set of
predicates. This is mainly used to be able to react on certain
properties of the environment, such as if the bytecode or the native
compiler is invoked, if the application is multi-threaded, and a few
more. If the new compiler frontends are used, most predicates are
found out automatically.

There is special support for scripts. A new directive, "#require",
loads packages into scripts. Of course, this works only with newly
created toploops which include the "findlib" library.

--
----------------------------------------------------------------------------
Gerd Stolpmann      Telefon: +49 6151 997705 (privat)
Viktoriastr. 100             
64293 Darmstadt     EMail:   Gerd.Stolpmann@darmstadt.netsurf.de (privat)
Germany                     
----------------------------------------------------------------------------



This archive was generated by hypermail 2b29 : Sun Jan 02 2000 - 11:58:23 MET