logo       

Re: Re: Begginer question: msg#00060

lang.haskell.cafe

Subject: Re: Re: Begginer question


On 6 Jan 2005, at 14:06, Maurício wrote:
*****
import Complex;
a = 3 :+ 4;
*****

and load it into ghci, "a + 4" gives me "7.0 :+ 4.0", although "a + (4::Float)" gives me that error again. Why Haskell converts "4" to Complex but not a Float?


The answer lies available to you in ghci:

Prelude> :t 4
4 :: forall t. (Num t) => t

The type of for is 'any type in the Num class'. So '4' stands for the Integer four as well as the Float four and the Double four and indeed the Complex 4.

No conversion is actually happening.

Jules


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise