Mark T.B. Carroll wrote: > I have a program that basically has, > > data Expression = > Value Value > | EVariable Variable | other stuff ... > > data Value = VNumber Number | other stuff ... > > data Variable = Variable { variable_name :: String, variable_time :: > Expression } > data Number = Number { value :: Double, dimension :: Dimension } > > newtype VariableCount = VariableCount (Variable, Number) > > The VNumber and EVariable constructors are ugly, though, [...] >
For comparison, the example could be formulated in O'Haskell as follows: data Variable = Variable { variable_name :: String, variable_time :: Expression } data Number = Number { value :: Double, dimension :: Dimension } data Value > Number = other stuff data Expression > Value, Number = other stuff newtype VariableCount = VariableCount (Variable, Number) -- Johan _______________________________________________ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe