packages feed

DSH-0.8.2.3: DSH.cabal

Name:                DSH
Version:             0.8.2.3
Synopsis:            Database Supported Haskell
Description:
  This is a Haskell library for database-supported program execution. Using
  this library a relational database management system (RDBMS) can be used as
  a coprocessor for the Haskell programming language, especially for those
  program fragments that carry out data-intensive and data-parallel
  computations.
  .
  Database executable program fragments can be written using the monad
  comprehension notation [2] and list processing combinators from the Haskell
  list prelude. Note that rather than embedding a relational language into
  Haskell, we turn idiomatic Haskell programs into SQL queries.
  .
  DSH faithfully represents list order and nesting, and compiles the list
  processing combinators into relational queries. The implementation avoids
  unnecessary data transfer and context switching between the database
  coprocessor and the Haskell runtime by ensuring that the number of generated
  relational queries is only determined by the program fragment's type and not
  by the database size.
  .
  DSH can be used to allow existing Haskell programs to operate on large scale
  data (e.g., larger than the available heap) or query existing database
  resident data with Haskell.
  .
  Note that this package is flagged experimental and therefore is not suited
  for production use. This is a proof of concept implementation only. To learn
  more about DSH, our paper entitled as "Haskell Boards the Ferry: Database-
  Supported Program Execution for Haskell" [1] is a recommended reading. The
  package includes a couple of examples that demonstrate how to use DSH.
  .
  The latest release implements new features described in our work-in-progress
  paper entitled as "Algebraic Data Types for Language-Integrated
  Queries" [3].
  .
  1. <http://db.inf.uni-tuebingen.de/files/giorgidze/ifl2010.pdf>
  .
  2. <http://db.inf.uni-tuebingen.de/files/giorgidze/haskell2011.pdf>
  .
  3. <http://db.inf.uni-tuebingen.de/files/giorgidze/adtq.pdf>

License:             BSD3
License-file:        LICENSE
Author:              George Giorgidze, Alexander Ulrich, Tom Schreiber, Nils Schweinsberg and Jeroen Weijers
Maintainer:          giorgidze@gmail.com, jeroen.weijers@uni-tuebingen.de
Stability:           Experimental
Category:            Database
Build-type:          Simple

Extra-source-files:  examples/Example01.hs
                     examples/Example02.hs
                     examples/Example03.hs
                     examples/Makefile
                     tests/Main.hs
                     tests/Makefile

Cabal-version:       >= 1.4

Library
  Build-depends:     base               >= 4.5 && < 5,
                     containers         >= 0.4,
                     array              >= 0.4,
                     bytestring         >= 0.9,
                     template-haskell   >= 2.7,
                     mtl                >= 2.1,
                     text               >= 0.11,
                     HDBC               >= 2.3,
                     HaXml              >= 1.23,
                     csv                >= 0.1,
                     Pathfinder         >= 0.5,
                     FerryCore          >= 0.4

  Hs-source-dirs:    src

  GHC-options:       -O3 -Wall -fno-warn-orphans

  Exposed-modules:   Database.DSH.Interpreter
                     Database.DSH.Compiler
                     Database.DSH

  Other-modules:     Database.DSH.Internals
                     Database.DSH.Externals
                     Database.DSH.CSV
                     Database.DSH.Impossible
                     Database.DSH.Compile
                     Database.DSH.TH