2012-08-26 3 views

Antwort

6

Sie könnten versuchen, pp

(define (display-hi) (display "Hi")) 
(pp display-hi) => 
(named-lambda (display-hi) 
    (display "Hi")) 

MIT-Scheme debugging aids

+1

+1 dieses man sollte die akzeptierte Antwort sein –

4

JavaScript wird vollständig interpretiert, daher liegen vollständige Funktionsdefinitionen herum, auch nachdem Sie sie definiert haben. Schema wird nicht wirklich vollständig interpretiert; Es kompiliert Funktionen (und ein paar andere Konstrukte, glaube ich) bis auf eine nicht lesbare Darstellung und verwirft den ursprünglichen Code.

Sie könnten es wahrscheinlich erhalten, um die anfängliche Textdarstellung einer Funktion zur Laufzeit mit einigen Makro-Tricks zu speichern, aber ich bin geneigt zu glauben, dass dies mehr Mühe als es wert wäre.

Wenn Sie mich fragen, warum brauchen Sie die Textdarstellung einer definierten Funktion zur Laufzeit?

+0

Weil ich bin faul und ich möchte sagen, '(Display-Funktion myFunction)' anstatt den Editor des Scrollens wieder nach oben: P –