From mboxrd@z Thu Jan 1 00:00:00 1970 From: Richard Stallman To: raeburn@raeburn.org Cc: guile-emacs@sourceware.cygnus.com Subject: Re: guile-emacs-0.1 released Date: Sun, 07 Jan 2001 09:13:00 -0000 Message-id: <200101071713.KAA18087@aztec.santafe.edu> References: <200003170249.TAA03077@aztec.santafe.edu> X-SW-Source: 2001-q1/msg00000.html I am responding to messages that got buried during the year. Please forgive me for taking so long to respond. You wrote: > Symbols might be converted without waiting for > strings to be done, but the interaction of Lisp dynamic bindings and > buffer- and frame-local bindings and Scheme lexical bindings needs to > be worked out. (IMHO, Scheme code should see Scheme behavior unless > it requests access to the current Lisp environment. I responded: > I don't think so. That is not a useful behavior in the context of > Emacs. To get useful results, we need to make the normal ways of > writing code access the local bindings of Emacs. You responded: Which "normal ways of writing code"? It occurs to me now that there's more than one way of interpreting what you originally said. So I think the useful thing for me to do is explain what I'm concerned about. If people want to write elisp, it'll work just fine, with the expected dynamic bindings and buffer-local variables and so on. If people want to write Scheme to extend an application -- be it GNU Emacs or GNU ld or whatever -- I think it should be Scheme, not "Scheme except maybe for dynamic bindings if you're running Emacs". The Scheme language certainly should not be changed, so variables should ordinarily be lexical as usual in Scheme. And these lexical variables would have nothing to do with Emacs buffer-local bindings. But whatever mechanism people use in Scheme to make and access dynamically scoped variables, it should be integrated smoothly with Emacs buffer-local and frame-local bindings when you use it in Emacs.