You have declared new data type mystack not Stack, so haskell compiler could not find Stack data type and its constructors. Secondly data type in Haskell need to be start with capital letters like data Mystack = Empty | Elem Char Mystack deriving Show then correct Function definition is pophead :: Mystack -> Char Regards Divyanshu On Tue, Mar 12, 2013 at 4:12 PM, doaltan <doaltan@yahoo.co.uk> wrote:
Hi I have such a stack data structure:
data mystack = Empty | Elem Char mystack deriving Show
I'm trying to get the head of the stack using this: pophead :: Stack -> Char pophead Empty = Empty pophead (Element x stack) = x And I'm getting this error for the last sentence of the function :
Not in scope: data constructor `Stack' Can you tell me how to fix it? Thanks.
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners