This may have been noted before, but it really confused me for a long
time:

Type checking
ERROR "/usr/gem/hscr/bmark/RASeq/Connected.hs" (line 10): Type error in application
*** expression     : isEmpty g
*** term           : g
*** type           : Graph a b
*** does not match : Graph c d

I eventually found that the first "Graph" was different to the second
"Graph" (they had been defined in different modules).

For a trivial example that causes the same confusion, see the three
appended files.

Graeme.

PS. Using Hugs1.4 June98.

Uuencoded tar file follows.

-------------------------------------------------------------------------------
import Hugs14Test7a (testA)
import Hugs14Test7b (Test)

test :: Test -> Bool
test t = testA t
-------------------------------------------------------------------------------
module Hugs14Test7a (testA) where

data Test = Test

testA :: Test -> Bool
testA Test = True
-------------------------------------------------------------------------------
module Hugs14Test7b (Test) where

data Test = Test
-------------------------------------------------------------------------------

begin 644 hugs14test7.tar.gz
M'XL(`-X=W#8``^W536Z#,!0$8-8^Q2R312O;.(X4*97HJ@?(!8CBA$I!5&#4
MZS<VRI]"FQ70Q7R;!^8)&>&QB_;0*.-=XY>O19,,0DEIC4$":*-TJ,"YQNO4
M`M;:I50V5>HTH*S4">0PT[G7-CZO@>3@RC_[3FW[_1@3&M=G^575'A]Q&6S"
M,L@Q"\LAFXO'9UO,0IT+$5JP6B'<XN4-[U5U[`8]UH@O@!=3?QT]<_OCA]H`
MGN=_<<F_-C;F?Z&8_S&4U:X]NM[\X[MPM1-BE_N\R_DZEB[\66_ZLTMCW3K&
M__^[W=RGRC]L>CW_=9?_E/D?Q6/^SV?\K_&?>LI$1$1$1$1$1$1$1$1$1-3C
)!WV8L#(`*```
`
end

Reply via email to