Send Beginners mailing list submissions to
        beginners@haskell.org

To subscribe or unsubscribe via the World Wide Web, visit
        http://www.haskell.org/mailman/listinfo/beginners
or, via email, send a message with subject or body 'help' to
        beginners-requ...@haskell.org

You can reach the person managing the list at
        beginners-ow...@haskell.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Beginners digest..."


Today's Topics:

   1.  Basic "data" question (Costello, Roger L.)


----------------------------------------------------------------------

Message: 1
Date: Thu, 24 Nov 2011 10:43:58 +0000
From: "Costello, Roger L." <coste...@mitre.org>
Subject: [Haskell-beginners] Basic "data" question
To: "beginners@haskell.org" <beginners@haskell.org>
Message-ID:
        <b5fee00b53cf054aa8439027e8fe177518191...@imcmbx04.mitre.org>
Content-Type: text/plain; charset="us-ascii"

Hi Folks,

I am trying to define a data type for this:

    A Lambda term is one of these:
        - Variable
        - Application of a Lambda term to a Lambda term
        - Abstraction of a Variable in a Lambda term

Here's an example of a Lambda term:

term = Abstraction (Variable X) (Application (Variable X) (Variable Y))

Is there a way to define Lambda term?

Here's an attempt at defining it:

data Var = V | W | X | Y | Z

data Lambda = Variable Var | Application Lambda Lambda | Abstraction (Variable 
Var) Lambda

But that yields the following error:

test.hs:5:71: Not in scope: type constructor or class 'Variable'

Any suggestions would be much appreciated.

/Roger



------------------------------

_______________________________________________
Beginners mailing list
Beginners@haskell.org
http://www.haskell.org/mailman/listinfo/beginners


End of Beginners Digest, Vol 41, Issue 33
*****************************************

Reply via email to