
*********************************************************************

Copyright (C) 1994-1995 by Dustin Puryear. All rights reserved.

          Welcome to SML, the String Manipulation Library for C!

  If you cannot find a valid archive containing *all* SML files please email
me at dpuryear@tyrell.net and we can arrange a transfer. In fact, if you have
any questions/comments (bug reports are VERY welcome), just contact me at the
above address.

  Note that this library is freeware, NOT public domain.

                                    SML author,
                                      Dustin Puryear (4.27.95)

Fidonet 1:3800/31.1 (as always, email is preferred and more reliable)
Internet dpuryear@tyrell.net

Dustin Puryear
PO BOX 77831
Baton Rouge, LA 70879
USA

*********************************************************************

Some things to note:

  Do not depend on the current implementation; use the black box method of
programming. Only the defined behavior will make it to the next release.

  I KNOW for a fact that the justify functions are messy. Unfortunately, I
don't see how to make them better. Any help would be appreciated!

  If someone has a profiler, please send me some information on what is *slow*
and what is not. I'm planning on buying Watcom or IBM C Set/2 sometime soon,
but then again, I might not.

SML changes:

v1.0.0 -> v2.0.0

Began using an RCS (specifically, GNU RCS).. it makes keeping up with every-
thing easier. Slowly but surely I'm getting used to the damn thing. It does
make compiling the library a little more of a pain, but that's life. '-)

On a personal note.. I now use OS/2 instead of MSDOS. I upgraded my
machine and OS/2 offers a lot more *sigh*. Still, I miss the old fella'.
Now, I just need to get a native OS/2 compiler. Watcom/CSet/GNU? More on
that later. Any suggestions/opinions(/donations) are more than welcome.

sml_csize()             changed to macro
sml_ccopy()             changed to macro
sml_rrotate()           changed to macro
sml_lrotate()           changed to macro
sml_fill()              changed to macro
sml_nfill()             changed to macro
sml_overlay()           changed to macro
sml_free()              changed to macro
sml_isalpha()           added
sml_isalphanum()        added
sml_isdigit()           added
sml_iswhite()           added
sml_is()                added
sml_cdel()              added
sml_fcdel()             added
sml_ldel()              added
sml_tdel()              added
sml_fssdel()            added
sml_wsdel()             added
sml_lwsdel()            added
sml_twsdel()            added
sml_fssrep()            added
sml_ssrep()             added
sml_crep()              added
sml_s2a_kill()          removed
sml_str2array()         renamed to sml_toksplit
sml_array2str()         renamed to sml_tokmerge
sml_tokskip()           added
sml_tokcopy()           added
sml_tokcopy()           added
sml_toknext()           added
sml_tokprev()           added
sml_ssdel()             changed calling method
sml_rend()              added
_chkinit()              removed (internal: sml_init() call no longer forced)

The SML_ALL macro has been removed. I felt there was no real need for it. IOW,
SML no longer supports it, period.

'Lots of error checking has been removed. This will increase performance and
I doubt anyone will even notice it's loss. Anything SML is not responsible for
directly is still checked (ie., memory allocation), but all internals are left
alone. The values SML_BADARG and SML_BADPOS are rarely used now. You need to
check for that yourself if you feel it's a must.
