From: Will Ware
Subject: NanoCAD 0.23
Message-ID: <>
This is to announce the next version of NanoCAD, version 0.23. NanoCAD is
molecule design software, intended to evolve into a useful tool for
nanotechnological design work.

Version 0.23 can be run either in Scheme (using MzScheme/MrEd from Rice
University) or in Common Lisp. There are now graphical user interfaces for
both languages, using MrEd for Scheme, and CLISP and Tcl for Common Lisp.
The code is available at
and there should soon be a DOS-formatted version at
The only difference between the Unix and DOS versions is how the text files
are formatted. In both versions, all the files are text files, under the
GNU license.

More details can be found at the following URLs, and the following text.
(As of this writing, there is not yet a web page for version 0.23)

----- README for version 0.23 ---------

Changes since version 0.22:

There are now two GUI systems available. There is the standard MrEd GUI,
and there is also a system for using a Tcl GUI from CLISP (in Common Lisp).

General clean-up and minor bug fixing.

No more chain-loading of source files.

Support for clean compiling in GCL and CLISP are now provided in compile.lsp
and Makefile. When compiled, GCL and CLISP typically run twice as fast as

The C preprocessing hack in config.lsp no longer interferes with the
Lisp editing mode in Emacs.


The CLISP/Tcl GUI isn't quite as capable as the MrEd GUI. With the MrEd GUI,
you can type commands at the MrEd console while the GUI is up, and MrEd can
respond to them immediately. This allows you to run the animation sequence
in MrEd just by typing "(show-gui) (g)". If you try the same thing in
CLISP/Tcl, the "(g)" never gets heard by CLISP because all its I/O
resources are dedicated to communicating with the Tcl window. This might be
fixable in a future revision by using non-blocking I/O commands to poll both
the input channel from the Tcl process, and the user's typed input.

Also, even when CLISP is compiled, the Tcl GUI runs much slower than the
MrEd GUI. For instance, you can do smooth rotations on two atoms, but not
on ten atoms.

So those are the things that aren't too great about the Tcl GUI. What _is_
good about the Tcl GUI is that it compelled me to find out which parts of
the GUI code are implementation-specific (those parts are in the gui-2.*
files) and in both cases, it amounts to about 350 lines of Scheme/Lisp/Tcl.
Presumably, one could write GUIs for STk and gcl-tk also in about 350 lines
Will Ware <·····> web <>
PGP fingerprint   45A8 722C D149 10CC   F0CF 48FB 93BF 7289