Hi Consider: ------------- module Err1 where import POSIX root :: RootType root w = do env = new posix w temp = "12" temp = "abc" env.stdout.write (show temp) What is the defined behavior? (The result using timberc is no compiler error and the output "12" when executed. If that is what's intended, then we might be in for some confused programmers. ) /Per