cat S; fun f : S -> S ; g : S ; lin f x = { s = x.s ++ "f" } ; g = { s = "s" } ;