I am studying the underlying semantics behind Haskell and to what degree
those semantics are actually implemented. I need to clarify what a *type
synonym* actual means in relation to Haskell's logic (or formal
semantics). I used the following type synonym:
type Name = String
getName(n) = n
I checked the types with two tests:
-- test 1
"ww" :: [Char]
-- test 2
getName("ww") :: Name
Obviously I get two different types.
In the case of the function Haskells type system seems to pick up enough
information to determine that âwwâ is a Name.
But I am not sure what is happening with the literal "ww" in the first test.
Haskell-Cafe mailing list