Send Beginners mailing list submissions to
        [email protected]

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
        [email protected]

You can reach the person managing the list at
        [email protected]

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


Today's Topics:

   1. Re:  error: Not in scope: data constructor        `BinTree' (Kak Dod)


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

Message: 1
Date: Sat, 14 Apr 2012 03:28:25 +0800 (SGT)
From: Kak Dod <[email protected]>
Subject: Re: [Haskell-beginners] error: Not in scope: data constructor
        `BinTree'
To: Kyle Murphy <[email protected]>
Cc: "[email protected]" <[email protected]>
Message-ID:
        <[email protected]>
Content-Type: text/plain; charset="iso-8859-1"

I wants to create things that way only, 

yes, later I may add another constructor like "Leaf a"?
sorry for the confusion in my question .

now i comes to know that all I wants to know was syntax of how to write "Node 
BinTree a" instead of? "Node a BinTree a" and there was many horrorful error 
messages like: Expected kind `?', but `BinTree' has kind `k0 -> *'
that why i have panic that time
i was not seen that error earlier

thank you for answer



________________________________
 From: Kyle Murphy <[email protected]>
To: Kak Dod <[email protected]> 
Cc: Tom Murphy <[email protected]>; "[email protected]" 
<[email protected]> 
Sent: Friday, 13 April 2012 6:32 PM
Subject: Re: [Haskell-beginners] error: Not in scope: data constructor `BinTree'
 

If you don't include "Node a" then there isn't any point in having the a 
parameter on BinTree as it's never used unless you add another constructor that 
uses it. I based the modification on the usage in your example where you're 
trying to store a value of 3. Without that parameter the code becomes:
b1 = Node EmptyBinTree EmptyBinTree
I haven't tried it, but that will also likely complain it can't deduce "a" from 
the usage.
-R. Kyle Murphy
Sent from my phone.
On Apr 13, 2012 1:03 PM, "Kak Dod" <[email protected]> wrote:

Thanks Tom. this is what i wanted
>I do not want "Node a" there, I wants only Node and Tom's solution works.
>Thanks to all .
>
>
>
>________________________________
> From: Tom Murphy <[email protected]>
>To: Kak Dod <[email protected]> 
>Cc: Kyle Murphy <[email protected]>; "[email protected]" 
><[email protected]> 
>Sent: Friday, 13 April 2012 4:53 PM
>Subject: Re: [Haskell-beginners] error: Not in scope: data constructor 
>`BinTree'
> 
>"(BinTree a)" needs to be in parentheses to pattern-match properly.
>
>data BinTree a = Node (BinTree a) (BinTree) a | EmptyBinTree
>?  deriving Show
>
>On 4/13/12, Kak Dod <[email protected]> wrote:
>> Thank you but
>>
>> if I change the code like this:
>>
>> data BinTree a = Node BinTree a BinTree a | EmptyBinTree deriving Show
>>
>> b1 = Node 3 EmptyBinTreeEmptyBinTree
>>
>> Then I am get this error:
>>
>> bintree.hs:1:23:
>> ??? `BinTree' is not applied to enough type arguments
>> ??? Expected kind `?', but `BinTree' has kind `k0 -> *'
>>
 ??? In the type `BinTree'
>> ??? In the definition of data constructor `Node'
>> ??? In the data type declaration for `BinTree'
>> Failed, modules loaded: none.
>>
>>
>>
>>
>> ________________________________
>>? From: Kyle Murphy <[email protected]>
>> To: Kak Dod <[email protected]>
>> Cc: "[email protected]" <[email protected]>
>> Sent: Friday, 13 April 2012 4:38 PM
>> Subject: Re: [Haskell-beginners] error: Not in scope: data constructor
>> `BinTree'
>>
>>
>> Your constructor
 is called Node, not BinTree.
>> data BinTree a = Node a (BinTree a) (BinTree a) | EmptyNode
>> b1 = Node 3 EmptyNode EmptyNode
>> -R. Kyle Murphy
>> Sent from my phone.
>> On Apr 13, 2012 12:24 PM, "Kak Dod" <[email protected]> wrote:
>>
>> if i compile the following code I get "bintree.hs:3:13: Not in scope: data
>> constructor `BinTree'"
>>>
>>>
>>>
>>>data BinTree a = Node BinTree a BinTree a | EmptyBinTree deriving Show
>>>
>>>b1 = (Node (BinTree 3) EmptyBinTree)
>>>
>>>
>>>
>>>please help
>>>
>>>
>>>-kak
>>>
>>>
>>>_______________________________________________
>>>Beginners mailing list
>>>[email protected]
>>>http://www.haskell.org/mailman/listinfo/beginners
>>>
>>>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://www.haskell.org/pipermail/beginners/attachments/20120414/1bc5457a/attachment-0001.htm>

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

_______________________________________________
Beginners mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/beginners


End of Beginners Digest, Vol 46, Issue 19
*****************************************

Reply via email to