diff options
Diffstat (limited to 'gnuwin32/contrib/flex/2.5.4a/flex-2.5.4a/MISC/fastwc')
-rw-r--r-- | gnuwin32/contrib/flex/2.5.4a/flex-2.5.4a/MISC/fastwc/README | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/gnuwin32/contrib/flex/2.5.4a/flex-2.5.4a/MISC/fastwc/README b/gnuwin32/contrib/flex/2.5.4a/flex-2.5.4a/MISC/fastwc/README deleted file mode 100644 index 0dd3afe4..00000000 --- a/gnuwin32/contrib/flex/2.5.4a/flex-2.5.4a/MISC/fastwc/README +++ /dev/null @@ -1,56 +0,0 @@ -This directory contains some examples illustrating techniques for extracting -high-performance from flex scanners. Each program implements a simplified -version of the Unix "wc" tool: read text from stdin and print the number of -characters, words, and lines present in the text. All programs were compiled -using gcc (version unavailable, sorry) with the -O flag, and run on a -SPARCstation 1+. The input used was a PostScript file, mainly containing -figures, with the following "wc" counts: - - lines words characters - 214217 635954 2592172 - - -The basic principles illustrated by these programs are: - - - match as much text with each rule as possible - - adding rules does not slow you down! - - avoid backing up - -and the big caveat that comes with them is: - - - you buy performance with decreased maintainability; make - sure you really need it before applying the above techniques. - -See the "Performance Considerations" section of flexdoc for more -details regarding these principles. - - -The different versions of "wc": - - mywc.c - a simple but fairly efficient C version - - wc1.l a naive flex "wc" implementation - - wc2.l somewhat faster; adds rules to match multiple tokens at once - - wc3.l faster still; adds more rules to match longer runs of tokens - - wc4.l fastest; still more rules added; hard to do much better - using flex (or, I suspect, hand-coding) - - wc5.l identical to wc3.l except one rule has been slightly - shortened, introducing backing-up - -Timing results (all times in user CPU seconds): - - program time notes - ------- ---- ----- - wc1 16.4 default flex table compression (= -Cem) - wc1 6.7 -Cf compression option - /bin/wc 5.8 Sun's standard "wc" tool - mywc 4.6 simple but better C implementation! - wc2 4.6 as good as C implementation; built using -Cf - wc3 3.8 -Cf - wc4 3.3 -Cf - wc5 5.7 -Cf; ouch, backing up is expensive |