Eric Lease Morgan wrote: > On Mar 21, 2007, at 5:07 AM, Laurence Finston wrote: > > Cool, and interesting. I think I speak for the community when I > sincerely say, "Good luck". > Thank you. > The goals you desire to achieve with the software are the same sorts > of goals many of us have. I'm sure some of us will install and > experiment with the Exchange Utilities when they are easily > installable on the platforms we support. Alas, many of us simply do > not have access to Microsoft products. This list is clearly not the place to discuss my personal situation, but I will say that I need to find work in order to continue working on this package. If I'm not employed _to_ work on it, I would work on it in my free time. I think this kind of project could receive funding from some institution, but I'm not in a position to apply for it. One problem with Free Software is finding someone to finance it. Using Microsoft products wasn't my choice. Visual Studio promotes a style of programming that starts with the GUI and then adds functionality to the buttons, edit boxes, etc. This is the opposite of what I think is the "right" way to go about it. That's why I'm building the new package around an interpreter that I've written using GNU Bison. (Just in case anyone isn't familiar with this topic, Bison is the GNU version of the UNIX utility `yacc'. Bison and yacc are "compiler generators".) The sub-package `scantest' can be installed on GNU/Linux systems. It should work on other UNIX-like systems, but I haven't tested this. At present, it's a "toy" program, since it doesn't perform a useful function, but it might be fun to try. I find it quite enjoyable watching the output from Bison parsers, but perhaps I'm easily amused. I don't think a GUI is necessary for this package, but one could be written. However, I would use a free library and certainly not Visual Studio. I'm not personally a big fan of GUIs, although they can be useful. An interpreter would also be useful in combination with a GUI. However, for this purpose, I think an interpreter for a machine-like language, and a scanner that reads binary files, would be more useful. I've planned to write an interpreter like this for my other package, GNU 3DLDF, but have never had the time. There are a lot of free tools, libraries, etc., for some of the tasks involved, notably `libxml' for handling XML data and YAZ for accessing Z39.50 servers. Much of the work will "just" be a matter of combining them. I believe that a good approach would be to program "filters" for the individual tasks I want to solve, i.e., programs that read from their standard input and write to their standard output. Such "filters" can be chained using pipes. As I'm sure many of you know, this is a typical style of programming in UNIX-like programming environments. Of course, the filter programs could also have "side effects", such as writing files. A great deal of my previous work has involved Donald Knuth's TeX and related packages. It's very easy to write programs that output TeX input files, and it's possible to produce very high quality printable output using TeX, usually in the form of PostScript or PDF files. I will probably use TeX to represent the contents of the databases, along with HTML. At present, I'm very occupied with job applications. I also have to perform some tasks resulting from the package having been accepted by the GNU Project. For example, I must add the required options, change copyright notices, work on preparing a release, etc. When I've done something that might be of interest to readers of this list, I will post an announcement. Under the circumstances, it may be awhile before I'm able to devote the necessary time to programming. Laurence Finston