[Haskell-cafe] DSLs and heterogeous lists