Am Dienstag, 3. Mai 2005 17:56 schrieben Sie: > On Fri, Apr 29, 2005 at 06:56:28PM +0200, Daniel Fischer wrote: > > So with :a(lso) the old module remains in sight for :n(ames) - and for :i > > in qualified form. Unfortunately I haven't found a way to use them, Hugs > > (Nov. 2003) in general refuses qualified names, though with some rather > > weird behaviour: > > > > Prelude> :l Test > > Test> :a Char > > Char> Prelude.map toUpper "buh" > > "BUH" > > Char> Data.Char.toUpper 'u' > > 'U' > > Char> :i Test.my_map > > my_map :: (a -> b) -> [a] -> [b] > > > > Char> Data.Char.toUpper 'u' > > ERROR - Undefined qualified variable "Data.Char.toUpper" > > Char> Prelude.map toUpper "buh" > > ERROR - Undefined qualified variable "Prelude.map" > > > > How can it be that Hugs knows these qualified names before I ask about > > Test.my_map but not afterwards? > > Hugs discards the import table of a module when switching modules, e.g. > with :m. It used to hold on to it, but this cost a lot of space. > So the qualified names in scope at the prompt immediately after :load are > what the user's guide says, but they disappear when you switch modules. > Unfortunately :i is also implemented using module switching.
Hm, I don't quite get it. Apparently whenever I ask :info Qualified.name with a qualification different from the top module, I lose all qualified names, even from explicitly imported modules -- right? Okay, that's not a problem, only a little odd. Now I encountered another odd thing: Char> :l Prelude> :a Char Char> :a Test Char> :l -- notice the top module is still Char! Prelude> :a Test Test> :a Char Char> in that session, this behaviour was reproducible, in later sessions it wasn't: Prelude> :a Char Char> :a Test Test> :l Prelude> :a Test Test> :a Char Char> :l Prelude> :a Char Char> :a Test Test> Any idea how that may come? Cheers, Daniel _______________________________________________ Hugs-Users mailing list Hugs-Users@haskell.org http://www.haskell.org/mailman/listinfo/hugs-users