# @(#)pd/strlib/README 1.2 24 Oct 1990 05:19:12 File : READ-ME Author : Richard A. O'Keefe. Updated: 1 June 1984. Purpose: Explain the new strings package. These files are in the public domain. This includes getopt.c, which is the work of Henry Spencer, University of Toronto Zoology, who says of it "None of this software is derived from Bell software. I had no access to the source for Bell's versions at the time I wrote it. This software is hereby explicitly placed in the public domain. It may be used for any purpose on any machine by anyone." I would greatly prefer it if *my* material received no military use. A note on character comparison. The various UNIX manuals come out and say explicitly that the *cmp and *chr routines use the computer's "native" character comparison. That is, on a PDP-11, VAX-11, and some other machines, signed character comparison is used, and the byte 0377 will never be located (use -1). On IBM 370s and many other machines, unsigned character comparison is used, and the byte -1 can't be found. (Use 0377.) If you have occasion to use 8-bit byte values in calls to *chr functions, it would be nice if the package looked after making it work portably. I thought about that, and decided not to do it, as you might *want* to write VAX code that didn't find 128, and might rely on the current effect. However, you should be able to use 8-bit values in a portable fashion if you ask, and that the package DOES do for you. There is a macro int2char(c) which takes the bottom 8 bits of c on a machine with unsigned character comparison or sign-extends them on a machine with signed comparison. It is up to you to use this macro in appropriate places. It is up to who- ever installs the package to make sure that the right definition is put in and the wrong one commented out. -=- The bcopy(), bzero(), and bcmp() function were written by Ronald S. Karr.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.