This is the mail archive of the guile@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Newbie again. Oracle. DLL calls


On Wed, May 10, 2000 at 03:06:21PM +0600, Sergey Dolin wrote:
> thanx for your attention, but I ask a little another question.
> PC>It's possible to do what you want.  I started work on this, and got
> Yes... guile has modules written on c, but DYNAMIC-LINKING 
> says they are not well tested... 

This works pretty well afaik.  I'm no guru, though.  I do know that I got
guile to load an oracle (oci ver 8) module that gave me access to a
database, and the dynamic loading stuff was reliable under linux.

> PC>sidetracked.  I want to try to do it with swig once guile support is
> PC>relatively stable again.  The size of OCI makes it daunting, and I think
> PC>that it'd require too many smob's to just full export oci's full interface
> nevermind. I've solved some task for slang and ActiveX.

I'm not sure how many smob's a full oci interface (for whatever version)
will require.  Could it exceed 255?  Probably not, but who knows.  Guile
does have a static limit on how many smob's can be created.

> PC>2) Oracle's OCI interface changes noticibly between releases.  So your
> PC>application glue should be portable between the same version of oracle on
> PC>different platforms (it should be mostly makefile changes).
> nop. Oracle 7.2 will be enough to everyone ;)

As long as you don't have to do things like access blob's or clob's that are
in the database, right?  As I recall, 7.2 doesn't have in-database LOB's in
the database or in the API.  Please correct me if I'm wrong since it's this
kind of thing that I get hung up on.

> PC>3) The way OCI does memory allocation and the strange opaque types it uses
> PC>to try to avoid good interface design and force seperation make the
> PC>groundwork a bit difficult, and difficult in places that 
> It's true. Oracle corp. saves its money on non-RDBMS programmers.
> 
> But. The main question is - what is the best way to imbed oracle interface 
> in guile?

I like thi's suggestion - do a lot of glue code and then put the interface
you find yourself using on top of it, and export that smaller interface into
guile.

Since your original question said "yes/no" is good enough, my answer is
"yes" it can be done entirely in guile.

-- 
The 5 year plan:
In five years we'll make up another plan.
Or just re-use this one.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]