Есть ли эквивалент python dir
для haskell ghci
?
В интерпретаторе Python dir
показывает определенные символы. Я хотел бы использовать что-то подобное и в Haskell, чтобы изучить функции, предоставляемые импортированными модулями.
me@mine$ python
>>> from pickle import *
>>> dir()
['APPEND', 'APPENDS', 'BINFLOAT', 'BINGET', 'BININT', 'BININT1', 'BININT2', 'BINPERSID', 'BINPUT', 'BINSTRING', 'BINUNICODE', 'BUILD', 'DICT', 'DUP', 'EMPTY_DICT', 'EMPTY_LIST', 'EMPTY_TUPLE', 'EXT1', 'EXT2', 'EXT4', 'FALSE', 'FLOAT', 'GET', 'GLOBAL', 'HIGHEST_PROTOCOL', 'INST', 'INT', 'LIST', 'LONG', 'LONG1', 'LONG4', 'LONG_BINGET', 'LONG_BINPUT', 'MARK', 'NEWFALSE', 'NEWOBJ', 'NEWTRUE', 'NONE', 'OBJ', 'PERSID', 'POP', 'POP_MARK', 'PROTO', 'PUT', 'PickleError', 'Pickler', 'PicklingError', 'REDUCE', 'SETITEM', 'SETITEMS', 'SHORT_BINSTRING', 'STOP', 'STRING', 'TRUE', 'TUPLE', 'TUPLE1', 'TUPLE2', 'TUPLE3', 'UNICODE', 'Unpickler', 'UnpicklingError', '__builtins__', '__doc__', '__name__', '__package__', 'dump', 'dumps', 'load', 'loads']
:browse
для отображения привязок, экспортируемых одним модулем. - person Carl   schedule 12.01.2014:browse Prelude
,:browse <MyModule/Main>
и:browse <Library>
, чтобы получить всю необходимую информацию. Я бы просто придерживался этого. Она немного отличается от функцииdir()
тем, чтоdir()
— это правильная функция, которая возвращает список строк, которыми вы можете манипулировать. - person bheklilr   schedule 12.01.2014:browse
также работает без аргументов, показывая все значения в области видимости. - person Gabriel Gonzalez   schedule 12.01.2014:browse
ближе всего кdir
вghci
. На самом деле после ваших ответов я использовал его для выполнения того, что мне было нужно. Идеальный ответ будет включать ваши комментарии и ответ @YellPika, в котором упоминается:browse
, завершение табуляции и разница сdir()
, упомянутая @bheklilr - person danza   schedule 13.01.2014