
hi, Jose A.Ortega Ruiz wrote:
hi all,
as stated in the subject, i'm a newcomer to haskell programming: i've read some tutorials and (portions of) a couple of books and am really fascinated with the language. but my haskell coding experience is limited to toy programs and short exercises. so i decided to try my hand at a small project to really learn haskell and the functional programming mindset[1], and i would appreciate to hear your opinions and comments on some issues before i start coding:
- build toolchain. i'm used to the autoconfig/automake/make tools for C/C++ projects, and to ant for Java stuff. what do haskellers use? my initial thought was using a plain Makefile with ghc, but there is also hmake and maybe other tools i am missing. what would you use? [2] ghc --make is also quite useful (the ghc documentation is at: haskell.org/ghc).
- graphics toolkit. one of my programs will be a GUI. there seems to be a lot of choice here: gtk2hs looks nice (as used in hircules) and fudgets seems to have a pretty interesting and well-documented architecture (which covers also client/server programming: i'll be using a client/server architecture too) but its widgets are uglier and look alien in current linux desktops. i'd like to have a fudgets-gtk framework of sorts :) and then, there is htoolkit, Object I/O and whatnot... any recommendations? this is a tough one... i think most of the libraries have some quircks. there are a few recent attempts to get a good library going, but i haven't had a chance to try them (the latest as far as i know are wxHaskell and hToolkit). i have a bit of experience with fudgets and it works. it is however getting a bit old (hence the funny look, and programming it is sometimes a bit weird). it would be nice to have a new fudgets, but it seems like a rather large task.
- TCP/IP stuff. i will have a client/server architecture with TCP/IP as the transport protocol. other than fudgets, i'm not aware of any haskell framework for IPC: am i missing something? ghc has a bunch of libraries for networking. they are a bit low level, but if you are used to writing networking applications in C, they are fine (and perhaps better). see the library documentation of ghc.
- XML. i'll be handling XML documents, and HaXml seems to me an excellent candidate to cover this area, but, of course, i'm very interested in hearing of alternatives... never used any of those.
-- ================================================== | Iavor S. Diatchki, Ph.D. student | | Department of Computer Science and Engineering | | School of OGI at OHSU | | http://www.cse.ogi.edu/~diatchki | ==================================================