![](https://secure.gravatar.com/avatar/5dfe8ebf043124713829809143720f03.jpg?s=120&d=mm&r=g)
Hello Mike, I had a look at your LTKtools and they look very nice. Certainly something that should be worked on to give the free Lisps a nice GUI. While I had not the time to do extensive testing here some comments, mostly looking at the code: - you should put the whole code in its own package, if it uses the ltk package, you do no longer need the ltk: prefix to call the ltk functions. - likewise, if you write an asd-file for it, it becomes much easier to build. For how to set up a package and an asd-file just look how ltk-mw did. - do not use setf do define variables - this works only in cmucl. For this in general you use defparameter, all variables such created are special, so no declare special needed any more. - perhaps the usage of threads could be replaced by the event handling facility of cmucl/sbcl. For one this would enhance portability, but the most obvious reason is, that I am rather sure that Ltk is not thread safe :p (just imagine two threads try to write to Tk at the same time - the characters of the two commands may be mixed unpredictably). But serve-event driven parallelism should be safe in general. So if you have to stick to threads, then make it so, that only one thread talks to Tk and all the other threads talk to that thread, to get Tk actions. Peter