[Haskell-cafe] Language Workbenches - the Haskell solution?
ralfla at microsoft.com
Sun Sep 11 18:50:45 EDT 2005
This looks like fun.
Just some general comments:
- One should try to *also* provide a simple solution. Here I would pick
a solution that doesn't need a lot of explanation (of Haskell and the
solution) and a lot of defense to score with it.
- As a second step, one should identify a sweet spot upfront. The sweet
spot could indeed be to get some extra static typing; some extra DSL
checks; some increased declarativeness. (Or all of it.) To this end, I
would study the DSL problem at hand, and not so much yet think of
Haskell encoding. You can only score with Haskell, if there is something
to be scored with in the problem at hand.
- Now one can explore the identified sweet spot by trying to put strong
Haskell features such as hs-plugins or Data.Generics or Data.Dynamic or
phantoms or all of them or something else to work.
- I haven't looked at the discussion, but a sophisticated Java solution
could also try to score with dynamic class loading, reflection, perhaps
even with compile-time reflection a la OpenJava. One would need to be
prepared to cope with that ;-)
- XML wasn't mentioned in your message. I wonder whether they discuss it
in the actual thread. (Yes, you might be saying XML is not the same
language as you are programming in, but it so easy to process XML in
many languages, and one uses XSD for the DSL syntax). In fact, in
Haskell I would strongly consider using HaXML or similar technology for
non-trivial configuration problems. XML makes configuration also more
portable. In reality, I don't see much value in using the programming
language syntax for representing the configuration information. This
makes it only harder to process those configurations with other tools.
> -----Original Message-----
> From: haskell-cafe-bounces at haskell.org [mailto:haskell-cafe-
> bounces at haskell.org] On Behalf Of Yoel Jacobsen
> Sent: Thursday, September 08, 2005 11:41 AM
> To: haskell-cafe at haskell.org
> Subject: [Haskell-cafe] Language Workbenches - the Haskell solution?
> I'm trying to create an _elegant_ solution in Haskell.
> Further, what is the type of the parser?
More information about the Haskell-Cafe