Peter Schachte's Freely-Distributable Software


I have written a few freely-distributable packages that may be useful to others. I'm always eager for feedback on these programs. In particular, if you improve them, I'd like to hear about it.

Unfortunately, I've only gotten around to putting the following here for easy distribution:


Logic Programming Software

globals.tar.gz
A package adding efficient scoped backtrackable global variable manipulation to Prolog programs. This sort of variable provides a convenient way for predicates to pass information around a program and accumulate lists or other terms without having too many arguments. This package may be used as an alternative to some uses of assert/1, or DCGs, or Extended DCGs, or Logical State Threads, or the Assumption Grammars of Bin Prolog, or .... The README file for this package provides more information about usage. The paper Global Variables in Logic Programming, published in the proceedings of ICLP97 (BibTeX entry available) describes this package in detail.

Shell and Perl Scripts

makesig
Adds a random pithy quote to a .signature file. You compose your .signature file with reasonably short lines, and makesig will choose a quote from your quote file or fortune file that will fit at the ends of the lines of your signature and paste it in, wrapping lines as necessary. It also tries to display attributions nicely. Individual quotes are separated by lines beginning with a percent sign (%), so you can use your favorite fortune file. Give it a try.

Peter Schachte / schachte@cs.mu.oz.au
Last update: 20 August 1997