Hello,

I see no real reason to use the second approach, unless you're doing something tremendously new and big. Besides, the first solution is much easier and will be easier to maintain (in case the back end changes).

Kind regards,
Jasper Van der Jeugt

On Mon, Jan 4, 2010 at 6:14 PM, CK Kashyap <ck_kashyap@yahoo.com> wrote:
Hi,
I am not sure if I'm using DSL in the right context here but I am referring to those solutions that allow us to write code in Haskell and generate a target code source code of another language or even object code for that matter. I am aware of two ways of achieving this -
1. Implement functions that emit the target code - that is, when the Haskell code is compiled and run, the target code is emitted
2. Modify the Haskell compiler's back end to emit the code - that is when the Haskell code is compiled the target code is emitted

I am not sure if there are more ways (hybrid perhaps) ...

My question is,  when would I chose one approach over the other?

Regards,
Kashyap





_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe