[Haskell-cafe] Conditional compilation

Sean Leather leather at cs.uu.nl
Fri Mar 27 11:45:22 EDT 2009

Hi Robin,

On Fri, Mar 27, 2009 at 16:13, Robin Green wrote:

> Suppose you have the requirement that a certain feature of your
> software be disable-able at compile time, to avoid having to pull in
> certain dependencies (which may not be available on all platforms).
> Disabling a feature may entail removing certain fields from certain
> constructors (again, to avoid pulling in certain dependencies), and/or
> removing certain functions from certain modules. What is the best way to
> do this in Haskell?

I don't know, but...

This problem description suggests that perhaps insights from
> Aspect-Oriented Programming and/or Software Product Lines may be
> relevant. However, I haven't heard of much work that relates these
> concepts to Haskell. Maybe this would be a good topic for an
> enterprising student?

I would love to see Haskell SPLs developed with feature-oriented programming
concepts [1,2]. Only it would be much better if compositions were type-safe.

I don't want aspects as they are presented in AspectJ (i.e. dynamic,
hazardous). But everybody has their own definition of aspect these days.


[1] http://en.wikipedia.org/wiki/Feature_Oriented_Programming
[2] http://www.cs.utexas.edu/users/schwartz/search.cgi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20090327/07919301/attachment.htm

More information about the Haskell-Cafe mailing list