Apache Clownfish
================

OVERVIEW

The Apache Clownfish "symbiotic" object system pairs with "host" dynamic
language environments and facilitates the development of high performance host
language extensions.  Currently, it is a subproject of Apache Lucy.

INSTALLATION

To build and install Apache Clownfish, follow the instructions in the
accompanying "INSTALL" document.

