Есть ли способ просмотреть исходный код #39;функции из Racket REPL?

Сейчас я пытаюсь немного погрузиться в Racket/Scheme. Рядом с моим редактором работает экземпляр (X )REPL, что очень помогает мне в изучении языка. Однако я не могу найти команду или макрос XREPL (или что-то еще ), который показал бы мне исходный код функции.

Кажется, все необходимые части уже есть:

Команда XREPL describeзнает файл:

->,describe string-join
; `string-join' is a bound identifier,
;   defined in racket/string.rkt
;   required directly

и get-collects-search-dirsзнает путь:

-> (require setup/dirs)
-> (get-collects-search-dirs)
'(#<path:/home/richard/.racket/5.2.1/collects>
  #<path:/usr/local/lib/racket/collects>)

И что касается отражения вещей, которые у нас есть:

-> (procedure-arity string-join)
2

Но это все перестанет быть полезным, если все, что вы хотите знать, это как вызвать функцию. Есть ли способ получить доступ к реализации функции или хотя бы к именам параметров?

Или, что также подойдет для меня -какой-то в -REPL простой текстовый эквивалент документации, которую открывает help?

5
задан rwos 11 April 2012 в 21:30
поделиться