Ответ 1
Я не знаю, как это сделать из GHCi.
Однако, если вы используете редактор, такой как Emacs или Vim, вы можете попробовать ghc-mod. Это внешний инструмент, который подключается к редактору и предоставляет некоторые функциональные возможности IDE для программ Haskell, включая возможность получения типа произвольного выражения, включая локальное определение.
В Emacs вы должны использовать C-c C-t
, чтобы найти тип выражения.
Если вы не используете Emacs или Vim, вы, вероятно, можете обернуть ghc-mod как расширение GHCi или что-то еще, но я думаю, что это будет несколько неудобно. Я не могу представить себе хороший способ сделать это, не имея редакторский интерфейс. Однако сам ghc-mod - это просто автономный инструмент командной строки, поэтому его легко работать. Если вы можете подумать о хорошем пользовательском интерфейсе для него, который не зависит от существующего текстового редактора, ищите его!
Конечно, если вы не используете Emacs или Vim, вы, вероятно, должны: P.