[Haskell-cafe] Creating a Haskell app to do crosstabs

Andy Elvey andy.elvey at paradise.net.nz
Wed Aug 10 21:18:12 EDT 2005


Hi everyone -

   I'm a relative newcomer to Haskell, and am very much besotted with it 
- it's a great language! :-)

 At the moment, I'm in the early stages of putting together a little 
"Haskell-like" language using the Spirit parser framework (Spirit is 
part of the Boost C++ libraries).   Spirit also has a 
functional-programming "sister" library (Phoenix), which includes 
lambdas, lazy functions and lots more.  Phoenix is currently being 
merged with the Boost Lambda Library.
  ( Sorry for the off-topic digression - just giving the background to 
what I'm doing .... ;-)  )

 I've done a couple of "toy parsers" for Spirit already,  but now I'm 
looking to do something that is more of a challenge - doing a small-ish 
Haskell-like language.  The language is aimed at being able to read in a
comma-delimited file (with column-headings), and putting the data into 
"columns".  ( I envisage maybe a Haskell "pair".  The first item being 
the column heading, the second being a list, with the data in it. )

  Then, the user would select one of those "columns" for a "page" 
variable (that one would be optional), and one or more "columns" for the 
crosstab rows and columns.

 What I'm needing to do is to first put together the code in Haskell 
itself, and get it running.  Then, that will give me a good feel as to 
how much of "core" Haskell I need to implement, in order to do the 
crosstab app.

 So, I was wondering - has anyone in the Haskell community used Haskell 
to do crosstabs?   ( And if so, is there any code available? ).  Any 
help in the two areas -

 a) Using Haskell to read a delimited file (with column-headings) into a 
columnar or tabular data-structure -
 b) Using Haskell to do crosstabs -

 - would be very welcome!  I should also stress that full credit will be 
given to the writers of any code supplied. 
  Very many thanks in advance for any help received! -

 - Andy


 


 



More information about the Haskell-Cafe mailing list