[Haskell] Haskell Weekly News: January 16, 2006

2006-01-15 Thread Donald Bruce Stewart

 Haskell Weekly News: January 16, 2006

   Greetings, and thanks for reading the 20th issue of HWN, a weekly
   newsletter for the Haskell community. Each Monday, new editions are
   posted to [1]the Haskell mailing list and to [2]The Haskell Sequence.
   [3]RSS is also available.

   1. http://www.haskell.org/mailman/listinfo/haskell
   2. http://sequence.complete.org/
   3. http://sequence.complete.org/node/feed

New Releases

 * hdbc-odbc. John Goerzen [4]released the first version of
   hdbc-odbc, the ODBC backend for HDBC. With this driver, you can
   use HDBC to connect to any database for which ODBC drivers exist,
   including such databases as MySQL, Oracle, MS SQL Server

   4. http://article.gmane.org/gmane.comp.lang.haskell.general/13007

Resources and Tools

 * Haskell Performance Resources. Simon Marlow [5]opened up a [6]wiki
   page to collect the community wisdom on writing high performance
   Haskell code. This is particularly relevant given the discussions
   regarding the language shootout recently, with many interesting
   techniques proposed.

   5. http://article.gmane.org/gmane.comp.lang.haskell.general/13018
   6. http://haskell.org/haskellwiki/Haskell_Performance_Resource

Discussion

 * Arrays. Bulat Ziganshin [7]wrote an interesting RFC on the various
   Haskell array interfaces.

   7. http://article.gmane.org/gmane.comp.lang.haskell.general/12992

 * Functional Java. Graham Klyne [8]alerted us to [9]FunctionalJ, an
   open source library for functional programming in Java. This might
   be useful to those unfortunates trapped on the JVM. Additionally,
   Bjorn Bringert [10]mentioned a similar library, Higher-Order Java
   (HOJ), he wrote a few years ago.

   8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/10898
   9. http://www.theserverside.com/news/thread.tss?thread_id=38430
  10. http://article.gmane.org/gmane.comp.lang.haskell.cafe/10900

 * Data structures. Duncan Coutts was [11]looking for an efficient
   data structure to implement a sequence data type with indexed
   insert/delete/lookup.

  11. http://thread.gmane.org/gmane.comp.lang.haskell.general/13073

 * Language Shootout, continued. Many entries have been improved on
   the [12]Computer Language Shootout, and after several years of
   complaints that micro-benchmarks are meaningless, and that the
   tests are biased against purely functional languages, it's great
   to see that [13]Haskell is now ranked 2nd overall.

  12. http://shootout.alioth.debian.org/gp4/
  13. http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all

Darcs Corner

 * darcsweb 0.14. Alberto Bertogli [14]released darcsweb 0.14.

  14. http://article.gmane.org/gmane.comp.version-control.darcs.user/9207

Quotes of the Week

 grr, sml can't derive Ord
 sml is a pain to use sometimes
 but sometimes it's a joy!
 ugh, I take it back, it's a pain

Contributing to HWN

   You can help us create new editions of this newsletter. Please see the
   [15]contributing information, send stories to dons -at-
   cse.unsw.edu.au. The Darcs repository is available at darcs get
   http://www.cse.unsw.edu.au/~dons/code/hwn

  15. http://sequence.complete.org/hwn-contrib
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] Re: HDBC Transactions with Sqlite3

2006-01-15 Thread John Goerzen
On 2006-01-14, Tom Hawkins <[EMAIL PROTECTED]> wrote:
> I have HDBC running with Sqlite3, but I'm getting a SqlError due to a
> locked table.  Please excuse my SQL ignorance, but what may be causing
> the problem?  In SQL, are we not allowed to select, update, and delete
> from a table within a single transaction?  If not, what are the rules
> for transactions?

See my reply on -cafe at:

  http://www.haskell.org//pipermail/haskell-cafe/2006-January/013950.html

-- John


___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] Re: Haskell DB bindings (was Re: ANN: HDBC (Haskell Database Connectivity)

2006-01-15 Thread John Goerzen
On 2006-01-14, Keean Schupke <[EMAIL PROTECTED]> wrote:
> Erm, has nobody replied to this yet? I want a robust interface, that 
> uses bracket notation all the way down, so that any error is caught and 
> resources are freed appropriately without the use of finalizers (which 
> may not get run and lead to resource starvation - they are not reliable 

To be sure, your only failure situation in this case is if you're
dealing with many connections *and* creating/destroying them frequently.

Hopefully you wouldn't be.

> if dealing with many connections, unless you start forcing garbage 
> collections). I want a simple interface (as few functions as possible to 
> do the job) and robust exception handling.

HDBC will let you manually close (and free) database objects.  If you
don't manually do that, they will be automatically closed/freed at
garbage collection time.  It uses a small C wrapper to make this happen
correctly.

It doesn't have built-in support for bracketing things all the way down,
but functions to do that are already in the testsuite.  It would be
trivial to add them to HDBC proper, since there is robust exception
handling all through.

The HDBC API is at:

http://darcs.complete.org/hdbc/doc/Database-HDBC.html

I didn't honestly follow the STRef discussion, or how something so
I/O-based could work there.

-- John

___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell