Currently GHCi shows the "real" type of an expression (i.e., the inferred generalized type), when you ask it:
Prelude> :t 1
1 :: Num a => a
Note that there is no defaulting happening, at least at the top level---of course if there were local things that needed to be defaulted while the expression was being type-checked then those would be defaulted.
If you ask GHCi to *evaluate* a polymorphic expression, then it will try to default the type when it is figuring out how to show the result. The alternative would be to say "sorry, I can't evaluate this, because it is polymorphic, so please tell me what type do you mean". This is probably a bit too inconvenient for practical use.
-Iavor