#(define current-module-bindings (ly:module->alist (current-module)))
%% alle Variablen, die ab hier bis zum Aufruf des Programms definiert werden, werden ausgegeben
#(let ((bindings
(assoc-remove!
(lset-difference
equal?
(ly:module->alist (current-module))
current-module-bindings)
'current-module-bindings)))
(pretty-print
(sort
(map car bindings) symbol<?)))
Variablenliste ausgeben
Zur Navigation springen
Zur Suche springen
Dies ist ein Hilfprogramm, das alle bisher definierten Variablen in das Log schreibt.
Genauer gesagt, alle Variablen, die zwischen der Codezeile
#(define current-module-bindings (ly:module->alist (current-module)))
und dem Aufruf des Codes, der mit #(let beginnt, liegen.}}
Scheme-Code
#(define current-module-bindings (ly:module->alist (current-module)))
%% alle Variablen, die ab hier bis zum Aufruf des Programms definiert werden, werden ausgegeben
#(let ((bindings
(assoc-remove!
(lset-difference
equal?
(ly:module->alist (current-module))
current-module-bindings)
'current-module-bindings)))
(pretty-print
(sort
(map car bindings) symbol<?)))
Anwendung
#(define current-module-bindings (ly:module->alist (current-module)))
A = 1
BB = "zwei"
CCC = { c d e f g }
DDDD = "auskommentiert"
#(let ((bindings
(assoc-remove!
(lset-difference
equal?
(ly:module->alist (current-module))
current-module-bindings)
'current-module-bindings)))
(pretty-print
(sort
(map car bindings) symbol<?)))
#(define current-module-bindings (ly:module->alist (current-module)))
A = 1
BB = "zwei"
CCC = { c d e f g }
DDDD = "auskommentiert"
#(let ((bindings
(assoc-remove!
(lset-difference
equal?
(ly:module->alist (current-module))
current-module-bindings)
'current-module-bindings)))
(pretty-print
(sort
(map car bindings) symbol<?)))
Ausgabe
(A BB CCC DDDD)