FWIW, I asked about this on stackoverflow a while back, and there were a couple of good approaches, although nothing that completely achieves it from ghci. I've used the ghci breakpoint trick a few times, although it's doesn't give the "complete" type.

Here's the link:
http://stackoverflow.com/questions/15034392/find-inferred-type-for-local-function


On Tue, Oct 29, 2013 at 3:06 PM, Christopher Done <chrisdone@gmail.com> wrote:
On 29 October 2013 22:36, martin <martin.drautzburg@web.de> wrote:
is there a way to determine types of symbols which are not toplevel but inside a function?

Not at present without transformation. There are two reasonably reliable approaches:

Insert noisy holes/make intentional type errors: http://ghc.haskell.org/trac/ghc/wiki/Holes#Insertingdeliberatetypeerrors

Holes will land in GHC to support this explicitly. I don't know what version of GHC has/will have this.

Alternatively, you can use ghc-mod (https://github.com/kazu-yamamoto/ghc-mod) which, if you can get it to work, can tell you the types of sub-expressions.

Lastly, the next version of the FP Complete IDE gives you types of sub-expressions just by clicking on them or selecting them out of the box.

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe