-----------------------------------------------------------------
itzam-core  

A concise embedded database engine written in portable C
-----------------------------------------------------------------

  version 2.0, released 1 November 2005

  homepage: http://www.coyotegulch.com/products/itzam/index.html
   contact: scott.ladd@coyotegulch.com

  Copyright 2004, 2005 Scott Robert Ladd. All rights reserved.
            
-----------------------------------------------------------------

The Itzam core library creates and manipulates files containing
variable-length, random access records. Information is
referenced by a user-defined key value; indexes may be combined
with or separate from data.

Itzam is a deliberately portable, low-level C library that can
(and will) be wrapped in C++, Java, Python, C#, and Fortran 95.
Higher level languages implement more complex heuristics on top
of the Itzam core functions.

The Itzam core library package includes build scripts for Unix
and Windows.

-----------------------------------------------------------------

Features include:

    * Small Footprint
      Itzam Core adds less then 6K bytes to a program when linked
      statically.
      
    * Portability
      Itzam is deliberately portable across operating systems and
      platforms. A database created on Windows is readable by an
      Itzam application on a Linux machine.
      
    * No Dependencies
      Itzam does not have any dependencies on external libraries
      or components, beyond the common elements included with
      every Standard C compiler.
      
    * Flexibility
      Build your databases with indexes embedded in data files,
      or separate key information for the data it references, to
      provide different indexing schemes for different purposes.
      Iterator selectors provide flexible filtering to define
      subsets of a database.
      
    * Dual Licensing, GPL and Commercial
      Itzam can be licensed under either the GNU General Public
      License (GPL) or a simple non-free license suitable for
      closed-source projects. The GPL version is provided as-is,
      without support, while the non-free license provides
      technical assistance and notice of updates and bug fixes.
      
    * 64-bit File Access
      Itzam is designed with 64-bit addressing in mind, and works
      with both 32- and 64-bit operating systems.
      
    * C++, Python, and Fortran 95 Abstractions
      The core library, written in ANSI C, operates at a
      low-level, working directly with the operating system.
      While a low-level library can be a powerful tool for
      embedded and small systems, large-scale projects can
      benefit from a higher-level of abstraction. Future products
      will provide C++, Python, and Fortran 95 "wrappers" that
      simplify on the types of applications built by
      practitioners of those languages.
      
    * Reliability
      In one commercial application, Itzam Core has managed an
      active 10 million record database for more than six months,
      without data corruption or other failure.
      
-----------------------------------------------------------------

Why is it called Itzam?

Naming new projects is always difficult; I sometimes think every
word in English has been appropriated by someone. So I've had to
stretch my linguistic horizons. "Itzam" is the Mayan word for
iguana; given the fondness of iguanas for trees, and the presence
of an iguana in my office, the name seemed rather fitting. The
Itzam logo is my own design, drawn in Inkscape.

-----------------------------------------------------------------

DOCUMENTATION

Important documentation resides in the doc directory, including a
tutorial and C API documentation. These documents can also be
found on the main Itzam web site, formatted nicely in HTML for
easier reading.

    http://www.coyotegulch.com/products/itzam/index.html

------------------------------------------------------------------
