[Haskell-cafe] I'd like start with Haskell, but...
Duncan Coutts
duncan.coutts at worc.ox.ac.uk
Sat Dec 16 14:23:45 EST 2006
On Sat, 2006-12-16 at 19:50 +0100, Waldemar Biernacki wrote:
> Hello!
>
> I'd like to start programming in Haskell.
> But as an "industry programmer" I have a hope to use Haskell in my every-day
> work. Big part of my every-day work are GUI applications (in MS-Windows)
> working with SQL databases (PostgreSQL on Linux servers).
>
> My question: Is there a TRUE possibility to use Haskell for such applications?
> Is anybody there who have ANY experience in the field?
> If answer would be positive what GUI+database libraries could be used in such
> a case?
I don't actually know of anyone using one of the GUI libs in combination
with one of the DB libs. It's an obvious thing to do but you'll not find
a lot of pre-existing examples or infrastructure to help you.
That's certainly one of the use cases that we're aiming for in the
Gtk2Hs project with our new api for the list/tree widget system. We can
now more easily implement the data model in Haskell so the obvious thing
to try would be a model based on a DB query. We're aiming for a Gtk2Hs
release with this new api before xmas.
For databases there are three major libs you could use, HDBC, HSQL, and
HaskellDB. HSQL and HDBC are in essentially the same niche, they provide
a common medium level api to a bunch of different db backends. They work
at the level of taking SQL strings and returning result sets. HaskellDB
is a higher level library (that can use HDBC or HSQL). It provides a
type safe way of constructing queries (and internally generates SQL).
So personally what I'd try would be Gtk2Hs+HDBC or Gtk2Hs+HDBC+HaskellDB.
> I've seen some GUI libraries web pages, but they seem to be NOT maintenanced
> any more.
There are several GUI libs that were started but not maintained. The
main ones that are maintained are Gtk2Hs and wxHaskell.
For platform support you're fine, all those DB libs support PostgreSQL
and both GUI libs support Windows, Linux and others.
Duncan
More information about the Haskell-Cafe
mailing list