On Tue 13 Dec 2011 17:08, David Kastrup <d...@gnu.org> writes: > The current implementation wraps scraps of code into (lambda () ...) and > executes them on-demand. So the expectation is that embedded Scheme > code can have side-effects on the lexical environment like with > > (let ((xxx 2)) > #{ #(set! xxx (1+ xxx)) #})
This closure strategy sounds fine, no? It's what I would do, I think, if I understand the problem correctly. I thought that you were saying that lilypond code could reference and set Scheme lexical variables. I was also under the impression that lilypond code could define lexical variables. If neither of these are true, then closures sound like a fine solution to me. Am I missing something? It has been a long thread :) Andy -- http://wingolog.org/