module Import>Basic>List Nil[]. Cons[first, rest]. Map[f, xs]. Apply[f, x]. //Should be shadowed Sub1[]. Add3[]. Res[value]. Map[f, xs: Nil[]]: Nil[] Map[f, xs: Cons[first, rest]]: Cons[Apply[f, xs>first], Map[f, xs>rest]] //Should be shadowed Apply[f: Sub1[], x: #Number[]]: #Subtract[x, 1] Apply[f: Add3[], x]: "Unexpected" //Should be unnecessary (doesn't even need to compile, but OK if does) Res[value: Map[Sub1[], Cons[3, Cons[4, Cons[-5, Nil[]]]]]]?