module Test where data Foo = Foo String foo :: Test:Foo -> String foo = \f -> case f of Foo s -> s ++ "foo" bar :: Foo -> String bar = foo module Inner where inner = "Inner" baz :: Test:Foo -> String baz = Test:foo innerCopy :: String innerCopy = Test:Inner:inner match :: Test:Foo -> String match = \f -> case f of Test:Foo s -> s ++ "foo"