[Haskell-cafe] Re: DSL question -- was: New slogan for haskell.org
Brandon S. Allbery KF8NH
allbery at ece.cmu.edu
Wed Dec 19 14:12:02 EST 2007
On Dec 19, 2007, at 13:03 , Steve Lihn wrote:
> In the Disadvantage section (near the end), there is an item -- hard
> or impossible to debug. Can anybody explain why or what it means? And
> how does it apply to Haskell?
In the general case, you would need to design into your DSL both
ability to debug programs written in it, and ability to debug its
runtime/implementation. With experience, you can make the latter
easier but in the case of complex DSLs even the best runtime support
can be tricky.
But in Haskell, not only is your DSL implemented in Haskell but it is
implemented *as* Haskell combinators, so you can use the existing
Haskell debugging features, *and* the implementation behaves like any
other Haskell program so you are more likely to be able to figure out
what's going on inside it given a reasonable debugging environment.
The problem there being that debugging support is still fairly new in
GHC 6.8.x (and well-nigh nonexistent in other Haskell
implementations) and evolving.
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery at kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery at ece.cmu.edu
electrical and computer engineering, carnegie mellon university KF8NH
More information about the Haskell-Cafe