<div dir="ltr">The only thing I can think of is that you wrote a Num instance for Fraction.  That allows it to represent a fraction as a literal 2 because you can create a fraction from an integer via fromInteger.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 8, 2017 at 2:21 PM, mike h <span dir="ltr"><<a href="mailto:mike_k_houghton@yahoo.co.uk" target="_blank">mike_k_houghton@yahoo.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I’m modelling fractions with a view to looking at continued fractions and I have this recursive structure.<br>
<br>
type Numerator   = Integer<br>
data Fraction = Numbr Integer | F Numerator Fraction<br>
<br>
<br>
in ghci I do<br>
<br>
λ-> :t F 1 (Numbr 2)<br>
F 1 (Numbr 2) :: Fraction<br>
<br>
which is fine. But what surprised me is that it also works without using Numbr e.g.<br>
<br>
λ-> :t F 1 2<br>
F 1 2 :: Fraction<br>
<br>
why is this?<br>
<br>
Thanks<br>
<br>
Mike<br>
______________________________<wbr>_________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org">Beginners@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-<wbr>bin/mailman/listinfo/beginners</a><br>
</blockquote></div><br></div>