On Tue, 2004-12-21 at 17:05 +0000, Simon Peyton-Jones wrote:
There is a difference between the result of calling mkName, and a quoted name e.g 'map. The former is dynamically bound and the latter is lexically bound.
Because there's a difference, I've made them print differently in the pretty printer
Foo.baz for the dynamically bound one Foo:baz for the lexically scoped one
This might break someone's code. Maybe they should both print as "Foo.baz"?
Since lexically scoped is the normal situation perhaps it should get the ordinary Foo.baz syntax and the dynamically bound variables should get the other syntax. Actually, for non-qualified variables there is still no syntactic difference between dynamically and statically scoped ones so it begs the question of why a syntactic difference is needed for the qualified case (or perhaps if a syntactic difference in the non-qualified would be a good idea). Duncan