home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 2 / DATAFILE_PDCD2.iso / utilities3 / gnu_sed_rx / README < prev    next >
Text File  |  1993-08-06  |  2KB  |  67 lines

  1. This directory contains an experimental release of GNU sed and GNU rx.
  2.  
  3. See the file INSTALL for compilation and installation instructions.
  4.  
  5. * The reason for this release
  6.  
  7. Older versions of GNU sed have used GNU regex, a featurful but slow
  8. text pattern matcher.  GNU rx is a reimplementation of the features in
  9. GNU regex.  Rx is much faster than its predecessor for many
  10. interesting patterns.  In (almost) no case should it be slower.
  11.  
  12. See the file ABOUT.RX for more information...about Rx.
  13.  
  14. * The status of GNU sed.
  15.  
  16. It has long been noted that GNU sed is much slower than other
  17. implementations.  Profiling of reported performance problems revealed
  18. that the GNU regex was the first order bottle-neck.
  19.  
  20. Now that that has been fixed, GNU sed is still somewhat slower than
  21. other implementations.  Replacing GNU regex with Rx revealed a
  22. second-order bottle-neck in the i/o habits of GNU sed (it reads input
  23. files using `getc').
  24.  
  25. So, there will follow a new version of GNU sed with even more
  26. performance improvements.
  27.  
  28.  
  29. ABOUT BUGS
  30.  
  31. Before reporting a bug, please check the list of oft-reported non-bugs
  32. (below).
  33.  
  34. Bugs and comments may be sent to bug-gnu-utils@prep.ai.mit.edu.
  35.  
  36. NONBUGS
  37.  
  38. * `sed -n' and `s/regex/replace/p'
  39.  
  40. Some versions of sed ignore the `p' (print) option of an `s' command
  41. unless the `-n' command switch has been specified.  Other versions
  42. always honor the `p' option.  GNU sed is the latter sort.
  43.  
  44. * regexp syntax clashes
  45.  
  46. GNU sed uses the Posix basic regular expression syntax.  According to
  47. the standard, the meaning of some escape sequences is undefined in
  48. this syntax;  notably  `\|' and `\+'.
  49.  
  50. As in all GNU programs that use Posix basic regular expressions, sed
  51. interprets these escape sequences as meta-characters.  So, `x\+'
  52. matches one or more occurences of `x'.   `abc\|def' matches either
  53. `abc' or `def'.
  54.  
  55. This syntax may cause problems when running scripts written for other
  56. seds.  Some sed programs have been written with the assumption that
  57. `\|' and `\+' match the literal characters `|' and `+'.  Such scripts
  58. must be modified by removing the spurious backslashes if they are to
  59. be used with GNU sed.
  60.  
  61. [If you have need of a free sed that understands the regexp
  62.  syntax of your choice, the source to GNU sed may be a good place to
  63.  start.  Consider changing the call to re_set_syntax in function main
  64.  in `sed.c'.  The file regex.h contains an explanation of the
  65.  supported syntax options.]
  66.  
  67.