I was wondering if it is possible to do something like this in Haskell
data Word = Det String | Adj String | Noun String | Verb String | Adverb String
data NounPhrase = Noun | Det Noun
If I'm going about this wrong, what I am trying to say is - a "Word" is either a "Det", "Adj", "Noun", etc. and a "NounPhrase" is a "Noun" OR a "Det" followed by a "Noun".
When I try to do this I get the error: "Undefined type constructor "Noun""
How can I go about this so it performs as stated above.