Hello Kim-Ee,
well right now I would even go for an abstract comprehension DSL.
I do think there's a big difference between the various DSL techniques,
most are designed with a particular evaluation in mind, tagless-style
ones are focused on constructing typed terms first, and the evaluation /
compilation is somewhat detached from that.
Günther
Am 29.12.09 14:36, schrieb Kim-Ee Yeoh:
Günther Schmidt wrote:
Initially I had simply imported the CSV files into empty tables in a
database and done the calculations directly in SQL, never ever again!
[snip]
But my 1st goal here is to express the algorithm.
Sounds like you want a better DSL than SQL. You're in massive company.
Conal gives a lot of useful advice on DSL design.
One way to start is to articulate existing pain. Where and why is SQL
painful?
Another trick is to work backwards: What kind of code do you really want to
write?
Whether you employ GADTs, initial datatypes, finally-tagless codata, etc.
isn't
really relevant at this stage. Prematurely latching on to a particular tool
gets
everything treated like a nail, even when they're nowhere close.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe