guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: etrack 0.89 available


From: Thien-Thi Nguyen
Subject: Re: etrack 0.89 available
Date: Sun, 15 Feb 2004 13:02:04 +0100

[cc trimmed]

   From: "Ludovic Courtès" <address@hidden>
   Date: Sun, 15 Feb 2004 00:55:47 +0100

   Just one note: I think having a simple text-based backend besides the
   pgsql backend would be pretty cool given the fact that pgsql is a bit
   "heavy".  :-)

well, if your expenses don't warrant more than a text-based database,
consider yourself a lucky fellow!

in any case, that is an inviting challenge.  i suppose if i were to
squeeze two free afternoons out of my brick-boring planned schedule and
start hacking in that direction, i would look at the bit in etrack.scm
that reads:

  #:use-module ((database postgres-table)
                #:select (pgtable-manager
                          compile-outspec
                          tuples-result->table
                          sql-pre))
  #:use-module ((database postgres)
                #:select (pg-exec pg-result? pg-ntuples))
  #:use-module ((database postgres-col-defs)
                #:renamer (symbol-prefix-proc 'col-defs:))
  #:use-module ((database postgres-resx)
                #:select (result->object-alists))
  #:use-module ((database postgres-meta)
                #:select (infer-defs)))

and move these to module (etrack database postgresql), then design a
more abstract interface, which the former can be tweaked to conform to,
and likewise for other interfaces.  i would start w/ using module (ttn
read-text-db-table), then raid other guile-related projects (simplesql,
odbc, et al), then include slib `database' support.  basic refactoring.

for slib, the nice hack would be to properly spawn a separate project to
fully and transparently wrap slib-style modules as guile-style modules.
there was noise about this earlier, but if there was code posted, i have
missed it.

thi




reply via email to

[Prev in Thread] Current Thread [Next in Thread]