I've developed an interface library for the CLISP implmentation of
Common Lisp that allows access to Oracle databases.
You can get it in one of three ways:
- download it from http://clisp.alma.com and build it
into your current copy of CLISP
- if you're working with a CVS working copy of CLISP
source from SourceForge, just update and rebuild
- wait for the next official release of CLISP, which should
include it.
The module provides a rich set of features that can be used for Oracle
applications both simple and sophisticated. The highlights are:
- Source code avaiable under the GNU General Public License
- Full access to most Oracle functionality, including all
functions accessible via SQL
- Complete error reporting, including pass-through of
Oracle error messages and identification of the
location of SQL parse errors
- Support for transactions (WITH-TRANSACTION macro)
- Auto-commit feature that commits database results to
simplify applications that are not transaction intensive.
- Automatic mapping of Oracle data types to and from
Lisp data types (string, fixnum, bignum, NULL, etc.)
- Convenient constructs for database inserts and updates
- Constructs for looping over SELECT query results:
a DO-ROWS macro, and a one-row lookahead buffer, useful
for formatting reports at "breaks" in data streams.
- Support for multiple, simultaneous connections to
the same database or different databases
- Connection caching, allowing re-used of previously
established database connections, to minimize overhead
The module currently has been built and tested on Linux/Intel, but I
see no reason why it should not work on other Unixes,
e.g. Sun/Solaris. Thanks in advance for any comments or feedback you
may have.
"The more of an IT flavor the job descriptions had, the less
dangerous the company was. The safest kind were the ones that wanted
Oracle experience. You never had to worry about those."
-- P. Graham [on using Lisp to advantage for Yahoo Stores]
"Oracle lets me sleep at night."
-- P. Greenspun, Lisp programmer
---
John Hinsdale, Alma Mater Software, Inc., Tarrytown, NY 10591-3710 USA
ยทยทยท@alma.com | http://www.alma.com/staff/hin | +1 914 631 4690