gawk-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gawk-diffs] [SCM] gawk branch, master, updated. a10f6f1a9a49d16133066f2


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, master, updated. a10f6f1a9a49d16133066f23fd3da1be994683a2
Date: Sun, 06 Jan 2013 15:53:07 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, master has been updated
       via  a10f6f1a9a49d16133066f23fd3da1be994683a2 (commit)
       via  ed4def1cbda16e7014180bfe502bbdccc6a8f2fc (commit)
       via  f33a496757d52c15fe0ec1e20bc20bd68d07dfa5 (commit)
       via  6b4dccf6db4dcaaff9f5a58baeee21329635ec18 (commit)
      from  cccfa4aac8863671e7215877f9d582d7c6c63753 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=a10f6f1a9a49d16133066f23fd3da1be994683a2

commit a10f6f1a9a49d16133066f23fd3da1be994683a2
Merge: f33a496 ed4def1
Author: Arnold D. Robbins <address@hidden>
Date:   Sun Jan 6 17:52:51 2013 +0200

    Merge branch 'gawk-4.0-stable'

diff --cc doc/ChangeLog
index 477e6e9,a548570..3c4e1fc
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@@ -1,10 -1,7 +1,12 @@@
  2013-01-06         Arnold D. Robbins     <address@hidden>
  
+       * gawk.texi, awkcard.in: Add Git Hub info for BWK awk.
+       Update copyrights.
 +      * gawk.texi: Add Software Tools quote in chapter on library functions.
 +
 +2012-12-25         Arnold D. Robbins     <address@hidden>
 +
 +      * gawk.texi: Remove doc sym_constant() API function.
  
  2012-12-24         Arnold D. Robbins     <address@hidden>
  
diff --cc doc/gawk.info
index 12a3b4c,a460447..e2aae48
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@@ -29547,13 -25163,14 +29556,19 @@@ Inde
  * awk, versions of, See Also Brian Kernighan's awk <1>: Other Versions.
                                                                (line  13)
  * awk, versions of, See Also Brian Kernighan's awk: BTL.      (line   6)
++<<<<<<< HEAD
 +* awka compiler for awk:                 Other Versions.      (line  55)
 +* AWKLIBPATH environment variable:       AWKLIBPATH Variable. (line   6)
++=======
+ * awk.h file (internal):                 Internals.           (line  15)
+ * awka compiler for awk:                 Other Versions.      (line  64)
+ * AWKNUM internal type:                  Internals.           (line  19)
++>>>>>>> gawk-4.0-stable
  * AWKPATH environment variable <1>:      PC Using.            (line  11)
  * AWKPATH environment variable:          AWKPATH Variable.    (line   6)
 -* awkprof.out file:                      Profiling.           (line  10)
 +* awkprof.out file:                      Profiling.           (line   6)
  * awksed.awk program:                    Simple Sed.          (line  25)
 -* awkvars.out file:                      Options.             (line  93)
 +* awkvars.out file:                      Options.             (line 107)
  * b debugger command (alias for break):  Breakpoint Control.  (line  11)
  * backslash (\) <1>:                     Regexp Operators.    (line  18)
  * backslash (\) <2>:                     Quoting.             (line  31)
@@@ -29605,13 -25222,12 +29620,13 @@@
  * backslash (\), in escape sequences, POSIX and: Escape Sequences.
                                                                (line 113)
  * backslash (\), regexp constants:       Computed Regexps.    (line  28)
 -* backtrace debugger command:            Dgawk Stack.         (line  13)
 +* backtrace debugger command:            Execution Stack.     (line  13)
  * BBS-list file:                         Sample Data Files.   (line   6)
- * Beebe, Nelson <1>:                     Other Versions.      (line  69)
+ * Beebe, Nelson <1>:                     Other Versions.      (line  78)
  * Beebe, Nelson:                         Acknowledgments.     (line  60)
 -* BEGIN pattern <1>:                     BEGIN/END.           (line   6)
 -* BEGIN pattern <2>:                     Field Separators.    (line  44)
 +* BEGIN pattern <1>:                     Profiling.           (line  62)
 +* BEGIN pattern <2>:                     BEGIN/END.           (line   6)
 +* BEGIN pattern <3>:                     Field Separators.    (line  44)
  * BEGIN pattern:                         Records.             (line  29)
  * BEGIN pattern, assert() user-defined function and: Assert Function.
                                                                (line  83)
@@@ -29697,10 -25314,10 +29712,14 @@@
  * built-in functions:                    Functions.           (line   6)
  * built-in functions, evaluation order:  Calling Built-in.    (line  30)
  * built-in variables:                    Built-in Variables.  (line   6)
 -* built-in variables, -v option, setting with: Options.       (line  40)
 +* built-in variables, -v option, setting with: Options.       (line  54)
  * built-in variables, conveying information: Auto-set.        (line   6)
  * built-in variables, user-modifiable:   User-modified.       (line   6)
++<<<<<<< HEAD
 +* Busybox Awk:                           Other Versions.      (line  79)
++=======
+ * Busybox Awk:                           Other Versions.      (line  87)
++>>>>>>> gawk-4.0-stable
  * call by reference:                     Pass By Value/Reference.
                                                                (line  47)
  * call by value:                         Pass By Value/Reference.
@@@ -30744,9 -26393,9 +30763,15 @@@
  * Jacobs, Andrew:                        Passwd Functions.    (line  90)
  * Jaegermann, Michal <1>:                Contributors.        (line  46)
  * Jaegermann, Michal:                    Acknowledgments.     (line  60)
++<<<<<<< HEAD
 +* Java implementation of awk:            Other Versions.      (line  97)
 +* Java programming language:             Glossary.            (line 388)
 +* jawk:                                  Other Versions.      (line  97)
++=======
+ * Java implementation of awk:            Other Versions.      (line 105)
+ * Java programming language:             Glossary.            (line 384)
+ * jawk:                                  Other Versions.      (line 105)
++>>>>>>> gawk-4.0-stable
  * Jedi knights:                          Undocumented.        (line   6)
  * join() user-defined function:          Join Function.       (line  18)
  * Kahrs, Ju"rgen <1>:                    Contributors.        (line  70)
@@@ -30791,9 -26437,9 +30816,15 @@@
  * left shift, bitwise:                   Bitwise Functions.   (line  32)
  * leftmost longest match:                Multiple Line.       (line  26)
  * length() function:                     String Functions.    (line 166)
++<<<<<<< HEAD
 +* Lesser General Public License (LGPL):  Glossary.            (line 405)
 +* LGPL (Lesser General Public License):  Glossary.            (line 405)
 +* libmawk:                               Other Versions.      (line 105)
++=======
+ * Lesser General Public License (LGPL):  Glossary.            (line 401)
+ * LGPL (Lesser General Public License):  Glossary.            (line 401)
+ * libmawk:                               Other Versions.      (line 113)
++>>>>>>> gawk-4.0-stable
  * libraries of awk functions:            Library Functions.   (line   6)
  * libraries of awk functions, assertions: Assert Function.    (line   6)
  * libraries of awk functions, associative arrays and: Library Names.
@@@ -30877,9 -26526,10 +30908,14 @@@
  * matching, expressions, See comparison expressions: Typing and Comparison.
                                                                (line   9)
  * matching, leftmost longest:            Multiple Line.       (line  26)
++<<<<<<< HEAD
 +* matching, null strings:                Gory Details.        (line 165)
 +* mawk program:                          Other Versions.      (line  35)
++=======
+ * matching, null strings:                Gory Details.        (line 164)
+ * mawk program:                          Other Versions.      (line  44)
++>>>>>>> gawk-4.0-stable
  * McPhee, Patrick:                       Contributors.        (line 100)
 -* memory, releasing:                     Internals.           (line 101)
  * message object files:                  Explaining gettext.  (line  41)
  * message object files, converting from portable object files: I18N Example.
                                                                (line  62)
@@@ -30993,8 -26646,8 +31029,13 @@@
  * OFS variable <1>:                      User-modified.       (line 124)
  * OFS variable <2>:                      Output Separators.   (line   6)
  * OFS variable:                          Changing Fields.     (line  64)
++<<<<<<< HEAD
 +* OpenBSD:                               Glossary.            (line 619)
 +* OpenSolaris:                           Other Versions.      (line  87)
++=======
+ * OpenBSD:                               Glossary.            (line 615)
+ * OpenSolaris:                           Other Versions.      (line  95)
++>>>>>>> gawk-4.0-stable
  * operating systems, BSD-based:          Manual History.      (line  28)
  * operating systems, PC, gawk on:        PC Using.            (line   6)
  * operating systems, PC, gawk on, installing: PC Installation.
@@@ -31255,21 -26911,21 +31296,30 @@@
  * Programming languages, Ada:            Glossary.            (line  20)
  * programming languages, data-driven vs. procedural: Getting Started.
                                                                (line  12)
 -* Programming languages, Java:           Glossary.            (line 384)
 -* programming, basic steps:              Basic High Level.    (line  19)
 +* Programming languages, Java:           Glossary.            (line 388)
 +* programming, basic steps:              Basic High Level.    (line  20)
  * programming, concepts:                 Basic Concepts.      (line   6)
  * pwcat program:                         Passwd Functions.    (line  23)
 -* q debugger command (alias for quit):   Miscellaneous Dgawk Commands.
 +* q debugger command (alias for quit):   Miscellaneous Debugger Commands.
                                                                (line 101)
++<<<<<<< HEAD
 +* QSE Awk:                               Other Versions.      (line 109)
++=======
+ * QSE Awk:                               Other Versions.      (line 117)
++>>>>>>> gawk-4.0-stable
  * question mark (?) regexp operator <1>: GNU Regexp Operators.
                                                                (line  59)
  * question mark (?) regexp operator:     Regexp Operators.    (line 111)
  * question mark (?), ?: operator:        Precedence.          (line  92)
++<<<<<<< HEAD
 +* QuikTrim Awk:                          Other Versions.      (line 113)
 +* quit debugger command:                 Miscellaneous Debugger Commands.
++=======
+ * QuikTrim Awk:                          Other Versions.      (line 121)
+ * quit debugger command:                 Miscellaneous Dgawk Commands.
++>>>>>>> gawk-4.0-stable
                                                                (line 101)
 -* QUIT signal (MS-Windows):              Profiling.           (line 207)
 +* QUIT signal (MS-Windows):              Profiling.           (line 206)
  * quoting <1>:                           Comments.            (line  27)
  * quoting <2>:                           Long.                (line  26)
  * quoting:                               Read Terminal.       (line  25)
@@@ -31498,31 -27152,27 +31548,49 @@@
  * single-character fields:               Single Character Fields.
                                                                (line   6)
  * Skywalker, Luke:                       Undocumented.        (line   6)
 +* sleep:                                 Extension Sample Time.
 +                                                              (line   6)
 +* sleep time extension function:         Extension Sample Time.
 +                                                              (line  20)
  * sleep utility:                         Alarm Program.       (line 109)
++<<<<<<< HEAD
 +* Solaris, POSIX-compliant awk:          Other Versions.      (line  87)
++=======
+ * Solaris, POSIX-compliant awk:          Other Versions.      (line  95)
++>>>>>>> gawk-4.0-stable
  * sort function, arrays, sorting:        Array Sorting Functions.
                                                                (line   6)
  * sort utility:                          Word Sorting.        (line  50)
  * sort utility, coprocesses and:         Two-way I/O.         (line  83)
  * sorting characters in different languages: Explaining gettext.
                                                                (line  93)
- * source code, awka:                     Other Versions.      (line  55)
+ * source code, awka:                     Other Versions.      (line  64)
  * source code, Brian Kernighan's awk:    Other Versions.      (line  13)
++<<<<<<< HEAD
 +* source code, Busybox Awk:              Other Versions.      (line  79)
 +* source code, gawk:                     Gawk Distribution.   (line   6)
 +* source code, jawk:                     Other Versions.      (line  97)
 +* source code, libmawk:                  Other Versions.      (line 105)
 +* source code, mawk:                     Other Versions.      (line  35)
 +* source code, mixing:                   Options.             (line 131)
 +* source code, pawk:                     Other Versions.      (line  69)
 +* source code, QSE Awk:                  Other Versions.      (line 109)
 +* source code, QuikTrim Awk:             Other Versions.      (line 113)
 +* source code, Solaris awk:              Other Versions.      (line  87)
 +* source code, xgawk:                    Other Versions.      (line 120)
++=======
+ * source code, Busybox Awk:              Other Versions.      (line  87)
+ * source code, gawk:                     Gawk Distribution.   (line   6)
+ * source code, jawk:                     Other Versions.      (line 105)
+ * source code, libmawk:                  Other Versions.      (line 113)
+ * source code, mawk:                     Other Versions.      (line  44)
+ * source code, mixing:                   Options.             (line 108)
+ * source code, pawk:                     Other Versions.      (line  78)
+ * source code, QSE Awk:                  Other Versions.      (line 117)
+ * source code, QuikTrim Awk:             Other Versions.      (line 121)
+ * source code, Solaris awk:              Other Versions.      (line  95)
+ * source code, xgawk:                    Other Versions.      (line 128)
++>>>>>>> gawk-4.0-stable
  * source files, search path for:         Igawk Program.       (line 368)
  * sparse arrays:                         Array Intro.         (line  71)
  * Spencer, Henry:                        Glossary.            (line  12)
@@@ -31595,9 -27250,8 +31663,9 @@@
  * SUBSEP variable, multidimensional arrays: Multi-dimensional.
                                                                (line  16)
  * substr() function:                     String Functions.    (line 481)
- * Sumner, Andrew:                        Other Versions.      (line  55)
+ * Sumner, Andrew:                        Other Versions.      (line  64)
  * switch statement:                      Switch Statement.    (line   6)
 +* SYMTAB array:                          Auto-set.            (line 254)
  * syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops.
                                                                (line 148)
  * system() function:                     I/O Functions.       (line  72)
@@@ -31809,10 -27465,13 +31877,16 @@@
  * words, counting:                       Wc Program.          (line   6)
  * words, duplicate, searching for:       Dupword Program.     (line   6)
  * words, usage counts, generating:       Word Sorting.        (line   6)
++<<<<<<< HEAD
 +* xgawk:                                 Other Versions.      (line 120)
++=======
+ * wstlen internal variable:              Internals.           (line  61)
+ * wstptr internal variable:              Internals.           (line  61)
+ * xgawk:                                 Other Versions.      (line 128)
++>>>>>>> gawk-4.0-stable
  * xgettext utility:                      String Extraction.   (line  13)
 -* XML (eXtensible Markup Language):      Internals.           (line 160)
  * XOR bitwise operation:                 Bitwise Functions.   (line   6)
 -* xor() function (gawk):                 Bitwise Functions.   (line  54)
 +* xor() function (gawk):                 Bitwise Functions.   (line  55)
  * Yawitz, Efraim:                        Contributors.        (line 106)
  * Zaretskii, Eli <1>:                    Bugs.                (line  70)
  * Zaretskii, Eli <2>:                    Contributors.        (line  56)
@@@ -31847,518 -27506,419 +31921,935 @@@
  
  
  Tag Table:
++<<<<<<< HEAD
 +Node: Top1352
 +Node: Foreword40217
 +Node: Preface44562
 +Ref: Preface-Footnote-147615
 +Ref: Preface-Footnote-247721
 +Node: History47953
 +Node: Names50344
 +Ref: Names-Footnote-151821
 +Node: This Manual51893
 +Ref: This Manual-Footnote-157799
 +Node: Conventions57899
 +Node: Manual History60033
 +Ref: Manual History-Footnote-163303
 +Ref: Manual History-Footnote-263344
 +Node: How To Contribute63418
 +Node: Acknowledgments64562
 +Node: Getting Started69058
 +Node: Running gawk71437
 +Node: One-shot72623
 +Node: Read Terminal73848
 +Ref: Read Terminal-Footnote-175498
 +Ref: Read Terminal-Footnote-275774
 +Node: Long75945
 +Node: Executable Scripts77321
 +Ref: Executable Scripts-Footnote-179190
 +Ref: Executable Scripts-Footnote-279292
 +Node: Comments79839
 +Node: Quoting82306
 +Node: DOS Quoting86929
 +Node: Sample Data Files87604
 +Node: Very Simple90636
 +Node: Two Rules95235
 +Node: More Complex97382
 +Ref: More Complex-Footnote-1100312
 +Node: Statements/Lines100397
 +Ref: Statements/Lines-Footnote-1104859
 +Node: Other Features105124
 +Node: When106052
 +Node: Invoking Gawk108199
 +Node: Command Line109660
 +Node: Options110443
 +Ref: Options-Footnote-1125841
 +Node: Other Arguments125866
 +Node: Naming Standard Input128524
 +Node: Environment Variables129618
 +Node: AWKPATH Variable130176
 +Ref: AWKPATH Variable-Footnote-1132934
 +Node: AWKLIBPATH Variable133194
 +Node: Other Environment Variables133791
 +Node: Exit Status136286
 +Node: Include Files136961
 +Node: Loading Shared Libraries140530
 +Node: Obsolete141755
 +Node: Undocumented142452
 +Node: Regexp142695
 +Node: Regexp Usage144084
 +Node: Escape Sequences146110
 +Node: Regexp Operators151873
 +Ref: Regexp Operators-Footnote-1159253
 +Ref: Regexp Operators-Footnote-2159400
 +Node: Bracket Expressions159498
 +Ref: table-char-classes161388
 +Node: GNU Regexp Operators163911
 +Node: Case-sensitivity167634
 +Ref: Case-sensitivity-Footnote-1170602
 +Ref: Case-sensitivity-Footnote-2170837
 +Node: Leftmost Longest170945
 +Node: Computed Regexps172146
 +Node: Reading Files175556
 +Node: Records177559
 +Ref: Records-Footnote-1186483
 +Node: Fields186520
 +Ref: Fields-Footnote-1189553
 +Node: Nonconstant Fields189639
 +Node: Changing Fields191841
 +Node: Field Separators197822
 +Node: Default Field Splitting200451
 +Node: Regexp Field Splitting201568
 +Node: Single Character Fields204910
 +Node: Command Line Field Separator205969
 +Node: Field Splitting Summary209410
 +Ref: Field Splitting Summary-Footnote-1212602
 +Node: Constant Size212703
 +Node: Splitting By Content217287
 +Ref: Splitting By Content-Footnote-1221013
 +Node: Multiple Line221053
 +Ref: Multiple Line-Footnote-1226900
 +Node: Getline227079
 +Node: Plain Getline229295
 +Node: Getline/Variable231384
 +Node: Getline/File232525
 +Node: Getline/Variable/File233847
 +Ref: Getline/Variable/File-Footnote-1235446
 +Node: Getline/Pipe235533
 +Node: Getline/Variable/Pipe238093
 +Node: Getline/Coprocess239200
 +Node: Getline/Variable/Coprocess240443
 +Node: Getline Notes241157
 +Node: Getline Summary243944
 +Ref: table-getline-variants244352
 +Node: Read Timeout245210
 +Ref: Read Timeout-Footnote-1248955
 +Node: Command line directories249012
 +Node: Printing249642
 +Node: Print251273
 +Node: Print Examples252610
 +Node: Output Separators255394
 +Node: OFMT257154
 +Node: Printf258512
 +Node: Basic Printf259418
 +Node: Control Letters260957
 +Node: Format Modifiers264769
 +Node: Printf Examples270778
 +Node: Redirection273493
 +Node: Special Files280477
 +Node: Special FD281010
 +Ref: Special FD-Footnote-1284635
 +Node: Special Network284709
 +Node: Special Caveats285559
 +Node: Close Files And Pipes286355
 +Ref: Close Files And Pipes-Footnote-1293378
 +Ref: Close Files And Pipes-Footnote-2293526
 +Node: Expressions293676
 +Node: Values294808
 +Node: Constants295484
 +Node: Scalar Constants296164
 +Ref: Scalar Constants-Footnote-1297023
 +Node: Nondecimal-numbers297205
 +Node: Regexp Constants300264
 +Node: Using Constant Regexps300739
 +Node: Variables303794
 +Node: Using Variables304449
 +Node: Assignment Options306173
 +Node: Conversion308045
 +Ref: table-locale-affects313421
 +Ref: Conversion-Footnote-1314045
 +Node: All Operators314154
 +Node: Arithmetic Ops314784
 +Node: Concatenation317289
 +Ref: Concatenation-Footnote-1320082
 +Node: Assignment Ops320202
 +Ref: table-assign-ops325190
 +Node: Increment Ops326598
 +Node: Truth Values and Conditions330068
 +Node: Truth Values331151
 +Node: Typing and Comparison332200
 +Node: Variable Typing332989
 +Ref: Variable Typing-Footnote-1336886
 +Node: Comparison Operators337008
 +Ref: table-relational-ops337418
 +Node: POSIX String Comparison340967
 +Ref: POSIX String Comparison-Footnote-1341923
 +Node: Boolean Ops342061
 +Ref: Boolean Ops-Footnote-1346139
 +Node: Conditional Exp346230
 +Node: Function Calls347962
 +Node: Precedence351556
 +Node: Locales355225
 +Node: Patterns and Actions356314
 +Node: Pattern Overview357368
 +Node: Regexp Patterns359037
 +Node: Expression Patterns359580
 +Node: Ranges363265
 +Node: BEGIN/END366231
 +Node: Using BEGIN/END366993
 +Ref: Using BEGIN/END-Footnote-1369724
 +Node: I/O And BEGIN/END369830
 +Node: BEGINFILE/ENDFILE372112
 +Node: Empty375016
 +Node: Using Shell Variables375332
 +Node: Action Overview377617
 +Node: Statements379974
 +Node: If Statement381828
 +Node: While Statement383327
 +Node: Do Statement385371
 +Node: For Statement386527
 +Node: Switch Statement389679
 +Node: Break Statement391776
 +Node: Continue Statement393766
 +Node: Next Statement395559
 +Node: Nextfile Statement397949
 +Node: Exit Statement400590
 +Node: Built-in Variables403006
 +Node: User-modified404101
 +Ref: User-modified-Footnote-1412456
 +Node: Auto-set412518
 +Ref: Auto-set-Footnote-1424869
 +Ref: Auto-set-Footnote-2425074
 +Node: ARGC and ARGV425130
 +Node: Arrays428981
 +Node: Array Basics430486
 +Node: Array Intro431312
 +Node: Reference to Elements435630
 +Node: Assigning Elements437900
 +Node: Array Example438391
 +Node: Scanning an Array440123
 +Node: Controlling Scanning442437
 +Ref: Controlling Scanning-Footnote-1447370
 +Node: Delete447686
 +Ref: Delete-Footnote-1450451
 +Node: Numeric Array Subscripts450508
 +Node: Uninitialized Subscripts452691
 +Node: Multi-dimensional454319
 +Node: Multi-scanning457413
 +Node: Arrays of Arrays459004
 +Node: Functions463649
 +Node: Built-in464468
 +Node: Calling Built-in465546
 +Node: Numeric Functions467534
 +Ref: Numeric Functions-Footnote-1471366
 +Ref: Numeric Functions-Footnote-2471723
 +Ref: Numeric Functions-Footnote-3471771
 +Node: String Functions472040
 +Ref: String Functions-Footnote-1495537
 +Ref: String Functions-Footnote-2495666
 +Ref: String Functions-Footnote-3495914
 +Node: Gory Details496001
 +Ref: table-sub-escapes497680
 +Ref: table-sub-posix-92499034
 +Ref: table-sub-proposed500385
 +Ref: table-posix-sub501739
 +Ref: table-gensub-escapes503284
 +Ref: Gory Details-Footnote-1504491
 +Ref: Gory Details-Footnote-2504542
 +Node: I/O Functions504693
 +Ref: I/O Functions-Footnote-1511798
 +Node: Time Functions511945
 +Ref: Time Functions-Footnote-1522837
 +Ref: Time Functions-Footnote-2522905
 +Ref: Time Functions-Footnote-3523063
 +Ref: Time Functions-Footnote-4523174
 +Ref: Time Functions-Footnote-5523286
 +Ref: Time Functions-Footnote-6523513
 +Node: Bitwise Functions523779
 +Ref: table-bitwise-ops524337
 +Ref: Bitwise Functions-Footnote-1528558
 +Node: Type Functions528742
 +Node: I18N Functions529212
 +Node: User-defined530839
 +Node: Definition Syntax531643
 +Ref: Definition Syntax-Footnote-1536553
 +Node: Function Example536622
 +Node: Function Caveats539216
 +Node: Calling A Function539637
 +Node: Variable Scope540752
 +Node: Pass By Value/Reference543715
 +Node: Return Statement547155
 +Node: Dynamic Typing550136
 +Node: Indirect Calls550871
 +Node: Library Functions560556
 +Ref: Library Functions-Footnote-1564069
 +Ref: Library Functions-Footnote-2564212
 +Node: Library Names564383
 +Ref: Library Names-Footnote-1567854
 +Ref: Library Names-Footnote-2568074
 +Node: General Functions568160
 +Node: Strtonum Function569113
 +Node: Assert Function572043
 +Node: Round Function575369
 +Node: Cliff Random Function576912
 +Node: Ordinal Functions577928
 +Ref: Ordinal Functions-Footnote-1580998
 +Ref: Ordinal Functions-Footnote-2581250
 +Node: Join Function581459
 +Ref: Join Function-Footnote-1583230
 +Node: Getlocaltime Function583430
 +Node: Data File Management587145
 +Node: Filetrans Function587777
 +Node: Rewind Function591916
 +Node: File Checking593303
 +Node: Empty Files594397
 +Node: Ignoring Assigns596627
 +Node: Getopt Function598180
 +Ref: Getopt Function-Footnote-1609484
 +Node: Passwd Functions609687
 +Ref: Passwd Functions-Footnote-1618662
 +Node: Group Functions618750
 +Node: Walking Arrays626834
 +Node: Sample Programs628403
 +Node: Running Examples629080
 +Node: Clones629808
 +Node: Cut Program631032
 +Node: Egrep Program640877
 +Ref: Egrep Program-Footnote-1648650
 +Node: Id Program648760
 +Node: Split Program652376
 +Ref: Split Program-Footnote-1655895
 +Node: Tee Program656023
 +Node: Uniq Program658826
 +Node: Wc Program666255
 +Ref: Wc Program-Footnote-1670521
 +Ref: Wc Program-Footnote-2670721
 +Node: Miscellaneous Programs670813
 +Node: Dupword Program672001
 +Node: Alarm Program674032
 +Node: Translate Program678781
 +Ref: Translate Program-Footnote-1683168
 +Ref: Translate Program-Footnote-2683396
 +Node: Labels Program683530
 +Ref: Labels Program-Footnote-1686901
 +Node: Word Sorting686985
 +Node: History Sorting690869
 +Node: Extract Program692708
 +Ref: Extract Program-Footnote-1700191
 +Node: Simple Sed700319
 +Node: Igawk Program703381
 +Ref: Igawk Program-Footnote-1718538
 +Ref: Igawk Program-Footnote-2718739
 +Node: Anagram Program718877
 +Node: Signature Program721945
 +Node: Internationalization723045
 +Node: I18N and L10N724477
 +Node: Explaining gettext725163
 +Ref: Explaining gettext-Footnote-1730229
 +Ref: Explaining gettext-Footnote-2730413
 +Node: Programmer i18n730578
 +Node: Translator i18n734778
 +Node: String Extraction735571
 +Ref: String Extraction-Footnote-1736532
 +Node: Printf Ordering736618
 +Ref: Printf Ordering-Footnote-1739402
 +Node: I18N Portability739466
 +Ref: I18N Portability-Footnote-1741915
 +Node: I18N Example741978
 +Ref: I18N Example-Footnote-1744613
 +Node: Gawk I18N744685
 +Node: Advanced Features745302
 +Node: Nondecimal Data746806
 +Node: Array Sorting748389
 +Node: Controlling Array Traversal749086
 +Node: Array Sorting Functions757324
 +Ref: Array Sorting Functions-Footnote-1760998
 +Ref: Array Sorting Functions-Footnote-2761091
 +Node: Two-way I/O761285
 +Ref: Two-way I/O-Footnote-1766717
 +Node: TCP/IP Networking766787
 +Node: Profiling769631
 +Node: Debugger777085
 +Node: Debugging778053
 +Node: Debugging Concepts778486
 +Node: Debugging Terms780342
 +Node: Awk Debugging782939
 +Node: Sample Debugging Session783831
 +Node: Debugger Invocation784351
 +Node: Finding The Bug785680
 +Node: List of Debugger Commands792168
 +Node: Breakpoint Control793502
 +Node: Debugger Execution Control797166
 +Node: Viewing And Changing Data800526
 +Node: Execution Stack803882
 +Node: Debugger Info805349
 +Node: Miscellaneous Debugger Commands809330
 +Node: Readline Support814775
 +Node: Limitations815606
 +Node: Arbitrary Precision Arithmetic817858
 +Ref: Arbitrary Precision Arithmetic-Footnote-1819500
 +Node: General Arithmetic819648
 +Node: Floating Point Issues821368
 +Node: String Conversion Precision822249
 +Ref: String Conversion Precision-Footnote-1823955
 +Node: Unexpected Results824064
 +Node: POSIX Floating Point Problems826217
 +Ref: POSIX Floating Point Problems-Footnote-1830042
 +Node: Integer Programming830080
 +Node: Floating-point Programming831833
 +Ref: Floating-point Programming-Footnote-1838142
 +Node: Floating-point Representation838406
 +Node: Floating-point Context839571
 +Ref: table-ieee-formats840413
 +Node: Rounding Mode841797
 +Ref: table-rounding-modes842276
 +Ref: Rounding Mode-Footnote-1845280
 +Node: Gawk and MPFR845461
 +Node: Arbitrary Precision Floats846703
 +Ref: Arbitrary Precision Floats-Footnote-1849132
 +Node: Setting Precision849443
 +Node: Setting Rounding Mode852176
 +Ref: table-gawk-rounding-modes852580
 +Node: Floating-point Constants853760
 +Node: Changing Precision855184
 +Ref: Changing Precision-Footnote-1856584
 +Node: Exact Arithmetic856758
 +Node: Arbitrary Precision Integers859866
 +Ref: Arbitrary Precision Integers-Footnote-1862866
 +Node: Dynamic Extensions863013
 +Node: Extension Intro864390
 +Node: Plugin License865598
 +Node: Extension Mechanism Outline866283
 +Ref: load-extension866700
 +Ref: load-new-function868178
 +Ref: call-new-function869159
 +Node: Extension API Description871153
 +Node: Extension API Functions Introduction872492
 +Node: General Data Types877270
 +Ref: General Data Types-Footnote-1882872
 +Node: Requesting Values883171
 +Ref: table-value-types-returned883902
 +Node: Constructor Functions884856
 +Node: Registration Functions887852
 +Node: Extension Functions888537
 +Node: Exit Callback Functions890711
 +Node: Extension Version String891954
 +Node: Input Parsers892604
 +Node: Output Wrappers902321
 +Node: Two-way processors906737
 +Node: Printing Messages908867
 +Ref: Printing Messages-Footnote-1909944
 +Node: Updating `ERRNO'910096
 +Node: Accessing Parameters910835
 +Node: Symbol Table Access912065
 +Node: Symbol table by name912577
 +Node: Symbol table by cookie914150
 +Ref: Symbol table by cookie-Footnote-1918279
 +Node: Cached values918342
 +Ref: Cached values-Footnote-1921785
 +Node: Array Manipulation921876
 +Ref: Array Manipulation-Footnote-1922974
 +Node: Array Data Types923013
 +Ref: Array Data Types-Footnote-1925716
 +Node: Array Functions925808
 +Node: Flattening Arrays929574
 +Node: Creating Arrays936413
 +Node: Extension API Variables941208
 +Node: Extension Versioning941844
 +Node: Extension API Informational Variables943745
 +Node: Extension API Boilerplate944831
 +Node: Finding Extensions948662
 +Node: Extension Example949209
 +Node: Internal File Description949947
 +Node: Internal File Ops953635
 +Ref: Internal File Ops-Footnote-1965082
 +Node: Using Internal File Ops965222
 +Ref: Using Internal File Ops-Footnote-1967575
 +Node: Extension Samples967841
 +Node: Extension Sample File Functions969284
 +Node: Extension Sample Fnmatch977757
 +Node: Extension Sample Fork979483
 +Node: Extension Sample Ord980697
 +Node: Extension Sample Readdir981473
 +Node: Extension Sample Revout982977
 +Node: Extension Sample Rev2way983570
 +Node: Extension Sample Read write array984260
 +Node: Extension Sample Readfile986143
 +Node: Extension Sample API Tests986898
 +Node: Extension Sample Time987423
 +Node: gawkextlib988730
 +Node: Language History991111
 +Node: V7/SVR3.1992633
 +Node: SVR4994954
 +Node: POSIX996396
 +Node: BTL997404
 +Node: POSIX/GNU998209
 +Node: Common Extensions1003744
 +Node: Ranges and Locales1004803
 +Ref: Ranges and Locales-Footnote-11009421
 +Ref: Ranges and Locales-Footnote-21009448
 +Ref: Ranges and Locales-Footnote-31009708
 +Node: Contributors1009929
 +Node: Installation1014225
 +Node: Gawk Distribution1015119
 +Node: Getting1015603
 +Node: Extracting1016429
 +Node: Distribution contents1018121
 +Node: Unix Installation1023382
 +Node: Quick Installation1023999
 +Node: Additional Configuration Options1025961
 +Node: Configuration Philosophy1027438
 +Node: Non-Unix Installation1029780
 +Node: PC Installation1030238
 +Node: PC Binary Installation1031537
 +Node: PC Compiling1033385
 +Node: PC Testing1036329
 +Node: PC Using1037505
 +Node: Cygwin1041690
 +Node: MSYS1042690
 +Node: VMS Installation1043204
 +Node: VMS Compilation1043807
 +Ref: VMS Compilation-Footnote-11044814
 +Node: VMS Installation Details1044872
 +Node: VMS Running1046507
 +Node: VMS Old Gawk1048114
 +Node: Bugs1048588
 +Node: Other Versions1052440
 +Node: Notes1057755
 +Node: Compatibility Mode1058555
 +Node: Additions1059338
 +Node: Accessing The Source1060265
 +Node: Adding Code1061868
 +Node: New Ports1067910
 +Node: Derived Files1072045
 +Ref: Derived Files-Footnote-11077366
 +Ref: Derived Files-Footnote-21077400
 +Ref: Derived Files-Footnote-31078000
 +Node: Future Extensions1078098
 +Node: Implementation Limitations1078679
 +Node: Extension Design1079931
 +Node: Old Extension Problems1081080
 +Ref: Old Extension Problems-Footnote-11082588
 +Node: Extension New Mechanism Goals1082645
 +Ref: Extension New Mechanism Goals-Footnote-11086004
 +Node: Extension Other Design Decisions1086190
 +Node: Extension Future Growth1088296
 +Node: Old Extension Mechansim1089117
 +Node: Basic Concepts1090874
 +Node: Basic High Level1091555
 +Ref: figure-general-flow1091826
 +Ref: figure-process-flow1092425
 +Ref: Basic High Level-Footnote-11095654
 +Node: Basic Data Typing1095839
 +Node: Glossary1099194
 +Node: Copying1124505
 +Node: GNU Free Documentation License1162062
 +Node: Index1187199
++=======
+ Node: Top1358
+ Node: Foreword30294
+ Node: Preface34639
+ Ref: Preface-Footnote-137692
+ Ref: Preface-Footnote-237798
+ Node: History38030
+ Node: Names40421
+ Ref: Names-Footnote-141898
+ Node: This Manual41970
+ Ref: This Manual-Footnote-146917
+ Node: Conventions47017
+ Node: Manual History49151
+ Ref: Manual History-Footnote-152421
+ Ref: Manual History-Footnote-252462
+ Node: How To Contribute52536
+ Node: Acknowledgments53680
+ Node: Getting Started58011
+ Node: Running gawk60390
+ Node: One-shot61576
+ Node: Read Terminal62801
+ Ref: Read Terminal-Footnote-164451
+ Ref: Read Terminal-Footnote-264727
+ Node: Long64898
+ Node: Executable Scripts66274
+ Ref: Executable Scripts-Footnote-168143
+ Ref: Executable Scripts-Footnote-268245
+ Node: Comments68792
+ Node: Quoting71259
+ Node: DOS Quoting75882
+ Node: Sample Data Files76557
+ Node: Very Simple79589
+ Node: Two Rules84188
+ Node: More Complex86335
+ Ref: More Complex-Footnote-189265
+ Node: Statements/Lines89350
+ Ref: Statements/Lines-Footnote-193812
+ Node: Other Features94077
+ Node: When95005
+ Node: Invoking Gawk97152
+ Node: Command Line98537
+ Node: Options99320
+ Ref: Options-Footnote-1112864
+ Node: Other Arguments112889
+ Node: Naming Standard Input115547
+ Node: Environment Variables116641
+ Node: AWKPATH Variable117085
+ Ref: AWKPATH Variable-Footnote-1119682
+ Node: Other Environment Variables119942
+ Node: Exit Status122282
+ Node: Include Files122957
+ Node: Obsolete126442
+ Node: Undocumented127128
+ Node: Regexp127369
+ Node: Regexp Usage128758
+ Node: Escape Sequences130784
+ Node: Regexp Operators136547
+ Ref: Regexp Operators-Footnote-1143927
+ Ref: Regexp Operators-Footnote-2144074
+ Node: Bracket Expressions144172
+ Ref: table-char-classes146062
+ Node: GNU Regexp Operators148585
+ Node: Case-sensitivity152308
+ Ref: Case-sensitivity-Footnote-1155276
+ Ref: Case-sensitivity-Footnote-2155511
+ Node: Leftmost Longest155619
+ Node: Computed Regexps156820
+ Node: Reading Files160230
+ Node: Records162171
+ Ref: Records-Footnote-1171095
+ Node: Fields171132
+ Ref: Fields-Footnote-1174165
+ Node: Nonconstant Fields174251
+ Node: Changing Fields176453
+ Node: Field Separators182434
+ Node: Default Field Splitting185063
+ Node: Regexp Field Splitting186180
+ Node: Single Character Fields189522
+ Node: Command Line Field Separator190581
+ Node: Field Splitting Summary194022
+ Ref: Field Splitting Summary-Footnote-1197214
+ Node: Constant Size197315
+ Node: Splitting By Content201899
+ Ref: Splitting By Content-Footnote-1205625
+ Node: Multiple Line205665
+ Ref: Multiple Line-Footnote-1211512
+ Node: Getline211691
+ Node: Plain Getline213919
+ Node: Getline/Variable216008
+ Node: Getline/File217149
+ Node: Getline/Variable/File218471
+ Ref: Getline/Variable/File-Footnote-1220070
+ Node: Getline/Pipe220157
+ Node: Getline/Variable/Pipe222717
+ Node: Getline/Coprocess223824
+ Node: Getline/Variable/Coprocess225067
+ Node: Getline Notes225781
+ Node: Getline Summary228568
+ Ref: table-getline-variants228911
+ Node: Command line directories229767
+ Node: Printing230392
+ Node: Print232023
+ Node: Print Examples233360
+ Node: Output Separators236144
+ Node: OFMT237904
+ Node: Printf239262
+ Node: Basic Printf240168
+ Node: Control Letters241707
+ Node: Format Modifiers245519
+ Node: Printf Examples251528
+ Node: Redirection254243
+ Node: Special Files261227
+ Node: Special FD261760
+ Ref: Special FD-Footnote-1265385
+ Node: Special Network265459
+ Node: Special Caveats266309
+ Node: Close Files And Pipes267105
+ Ref: Close Files And Pipes-Footnote-1274128
+ Ref: Close Files And Pipes-Footnote-2274276
+ Node: Expressions274426
+ Node: Values275558
+ Node: Constants276234
+ Node: Scalar Constants276914
+ Ref: Scalar Constants-Footnote-1277773
+ Node: Nondecimal-numbers277955
+ Node: Regexp Constants281014
+ Node: Using Constant Regexps281489
+ Node: Variables284544
+ Node: Using Variables285199
+ Node: Assignment Options286923
+ Node: Conversion288795
+ Ref: table-locale-affects294171
+ Ref: Conversion-Footnote-1294795
+ Node: All Operators294904
+ Node: Arithmetic Ops295534
+ Node: Concatenation298039
+ Ref: Concatenation-Footnote-1300832
+ Node: Assignment Ops300952
+ Ref: table-assign-ops305940
+ Node: Increment Ops307348
+ Node: Truth Values and Conditions310818
+ Node: Truth Values311901
+ Node: Typing and Comparison312950
+ Node: Variable Typing313739
+ Ref: Variable Typing-Footnote-1317636
+ Node: Comparison Operators317758
+ Ref: table-relational-ops318168
+ Node: POSIX String Comparison321717
+ Ref: POSIX String Comparison-Footnote-1322673
+ Node: Boolean Ops322811
+ Ref: Boolean Ops-Footnote-1326889
+ Node: Conditional Exp326980
+ Node: Function Calls328712
+ Node: Precedence332306
+ Node: Locales335975
+ Node: Patterns and Actions337064
+ Node: Pattern Overview338118
+ Node: Regexp Patterns339787
+ Node: Expression Patterns340330
+ Node: Ranges344015
+ Node: BEGIN/END346981
+ Node: Using BEGIN/END347743
+ Ref: Using BEGIN/END-Footnote-1350474
+ Node: I/O And BEGIN/END350580
+ Node: BEGINFILE/ENDFILE352862
+ Node: Empty355755
+ Node: Using Shell Variables356071
+ Node: Action Overview358356
+ Node: Statements360713
+ Node: If Statement362567
+ Node: While Statement364066
+ Node: Do Statement366110
+ Node: For Statement367266
+ Node: Switch Statement370418
+ Node: Break Statement372515
+ Node: Continue Statement374505
+ Node: Next Statement376298
+ Node: Nextfile Statement378688
+ Node: Exit Statement381329
+ Node: Built-in Variables383745
+ Node: User-modified384840
+ Ref: User-modified-Footnote-1392866
+ Node: Auto-set392928
+ Ref: Auto-set-Footnote-1402219
+ Node: ARGC and ARGV402424
+ Node: Arrays406275
+ Node: Array Basics407780
+ Node: Array Intro408606
+ Node: Reference to Elements412924
+ Node: Assigning Elements415194
+ Node: Array Example415685
+ Node: Scanning an Array417417
+ Node: Controlling Scanning419731
+ Ref: Controlling Scanning-Footnote-1424664
+ Node: Delete424980
+ Ref: Delete-Footnote-1427745
+ Node: Numeric Array Subscripts427802
+ Node: Uninitialized Subscripts429985
+ Node: Multi-dimensional431613
+ Node: Multi-scanning434707
+ Node: Arrays of Arrays436298
+ Node: Functions440943
+ Node: Built-in441765
+ Node: Calling Built-in442843
+ Node: Numeric Functions444831
+ Ref: Numeric Functions-Footnote-1448663
+ Ref: Numeric Functions-Footnote-2449020
+ Ref: Numeric Functions-Footnote-3449068
+ Node: String Functions449337
+ Ref: String Functions-Footnote-1472834
+ Ref: String Functions-Footnote-2472963
+ Ref: String Functions-Footnote-3473211
+ Node: Gory Details473298
+ Ref: table-sub-escapes474977
+ Ref: table-sub-posix-92476331
+ Ref: table-sub-proposed477674
+ Ref: table-posix-sub479024
+ Ref: table-gensub-escapes480570
+ Ref: Gory Details-Footnote-1481777
+ Ref: Gory Details-Footnote-2481828
+ Node: I/O Functions481979
+ Ref: I/O Functions-Footnote-1489084
+ Node: Time Functions489231
+ Ref: Time Functions-Footnote-1500123
+ Ref: Time Functions-Footnote-2500191
+ Ref: Time Functions-Footnote-3500349
+ Ref: Time Functions-Footnote-4500460
+ Ref: Time Functions-Footnote-5500572
+ Ref: Time Functions-Footnote-6500799
+ Node: Bitwise Functions501065
+ Ref: table-bitwise-ops501623
+ Ref: Bitwise Functions-Footnote-1505783
+ Node: Type Functions505967
+ Node: I18N Functions506437
+ Node: User-defined508064
+ Node: Definition Syntax508868
+ Ref: Definition Syntax-Footnote-1513778
+ Node: Function Example513847
+ Node: Function Caveats516441
+ Node: Calling A Function516862
+ Node: Variable Scope517977
+ Node: Pass By Value/Reference519952
+ Node: Return Statement523392
+ Node: Dynamic Typing526373
+ Node: Indirect Calls527108
+ Node: Internationalization536793
+ Node: I18N and L10N538219
+ Node: Explaining gettext538905
+ Ref: Explaining gettext-Footnote-1543971
+ Ref: Explaining gettext-Footnote-2544155
+ Node: Programmer i18n544320
+ Node: Translator i18n548520
+ Node: String Extraction549313
+ Ref: String Extraction-Footnote-1550274
+ Node: Printf Ordering550360
+ Ref: Printf Ordering-Footnote-1553144
+ Node: I18N Portability553208
+ Ref: I18N Portability-Footnote-1555657
+ Node: I18N Example555720
+ Ref: I18N Example-Footnote-1558355
+ Node: Gawk I18N558427
+ Node: Advanced Features559044
+ Node: Nondecimal Data560557
+ Node: Array Sorting562140
+ Node: Controlling Array Traversal562837
+ Node: Array Sorting Functions571074
+ Ref: Array Sorting Functions-Footnote-1574748
+ Ref: Array Sorting Functions-Footnote-2574841
+ Node: Two-way I/O575035
+ Ref: Two-way I/O-Footnote-1580467
+ Node: TCP/IP Networking580537
+ Node: Profiling583381
+ Node: Library Functions590855
+ Ref: Library Functions-Footnote-1593862
+ Node: Library Names594033
+ Ref: Library Names-Footnote-1597504
+ Ref: Library Names-Footnote-2597724
+ Node: General Functions597810
+ Node: Strtonum Function598763
+ Node: Assert Function601693
+ Node: Round Function605019
+ Node: Cliff Random Function606562
+ Node: Ordinal Functions607578
+ Ref: Ordinal Functions-Footnote-1610648
+ Ref: Ordinal Functions-Footnote-2610900
+ Node: Join Function611109
+ Ref: Join Function-Footnote-1612880
+ Node: Gettimeofday Function613080
+ Node: Data File Management616795
+ Node: Filetrans Function617427
+ Node: Rewind Function621566
+ Node: File Checking622953
+ Node: Empty Files624047
+ Node: Ignoring Assigns626277
+ Node: Getopt Function627830
+ Ref: Getopt Function-Footnote-1639134
+ Node: Passwd Functions639337
+ Ref: Passwd Functions-Footnote-1648312
+ Node: Group Functions648400
+ Node: Walking Arrays656484
+ Node: Sample Programs658053
+ Node: Running Examples658718
+ Node: Clones659446
+ Node: Cut Program660670
+ Node: Egrep Program670515
+ Ref: Egrep Program-Footnote-1678288
+ Node: Id Program678398
+ Node: Split Program682014
+ Ref: Split Program-Footnote-1685533
+ Node: Tee Program685661
+ Node: Uniq Program688464
+ Node: Wc Program695893
+ Ref: Wc Program-Footnote-1700159
+ Ref: Wc Program-Footnote-2700359
+ Node: Miscellaneous Programs700451
+ Node: Dupword Program701639
+ Node: Alarm Program703670
+ Node: Translate Program708419
+ Ref: Translate Program-Footnote-1712806
+ Ref: Translate Program-Footnote-2713034
+ Node: Labels Program713168
+ Ref: Labels Program-Footnote-1716539
+ Node: Word Sorting716623
+ Node: History Sorting720507
+ Node: Extract Program722346
+ Ref: Extract Program-Footnote-1729829
+ Node: Simple Sed729957
+ Node: Igawk Program733019
+ Ref: Igawk Program-Footnote-1748176
+ Ref: Igawk Program-Footnote-2748377
+ Node: Anagram Program748515
+ Node: Signature Program751583
+ Node: Debugger752683
+ Node: Debugging753594
+ Node: Debugging Concepts754007
+ Node: Debugging Terms755863
+ Node: Awk Debugging758486
+ Node: Sample dgawk session759378
+ Node: dgawk invocation759870
+ Node: Finding The Bug761052
+ Node: List of Debugger Commands767538
+ Node: Breakpoint Control768849
+ Node: Dgawk Execution Control772485
+ Node: Viewing And Changing Data775836
+ Node: Dgawk Stack779173
+ Node: Dgawk Info780633
+ Node: Miscellaneous Dgawk Commands784581
+ Node: Readline Support790009
+ Node: Dgawk Limitations790847
+ Node: Language History793036
+ Node: V7/SVR3.1794548
+ Node: SVR4796869
+ Node: POSIX798311
+ Node: BTL799319
+ Node: POSIX/GNU800124
+ Node: Common Extensions805275
+ Node: Ranges and Locales806334
+ Ref: Ranges and Locales-Footnote-1810952
+ Ref: Ranges and Locales-Footnote-2810979
+ Ref: Ranges and Locales-Footnote-3811239
+ Node: Contributors811460
+ Node: Installation815722
+ Node: Gawk Distribution816616
+ Node: Getting817100
+ Node: Extracting817926
+ Node: Distribution contents819618
+ Node: Unix Installation824879
+ Node: Quick Installation825496
+ Node: Additional Configuration Options827458
+ Node: Configuration Philosophy828935
+ Node: Non-Unix Installation831277
+ Node: PC Installation831735
+ Node: PC Binary Installation833034
+ Node: PC Compiling835049
+ Node: PC Testing837993
+ Node: PC Using839169
+ Node: Cygwin843354
+ Node: MSYS844354
+ Node: VMS Installation844868
+ Node: VMS Compilation845471
+ Ref: VMS Compilation-Footnote-1846478
+ Node: VMS Installation Details846536
+ Node: VMS Running848171
+ Node: VMS Old Gawk849778
+ Node: Bugs850252
+ Node: Other Versions854104
+ Node: Notes859736
+ Node: Compatibility Mode860428
+ Node: Additions861211
+ Node: Accessing The Source862023
+ Node: Adding Code863448
+ Node: New Ports869415
+ Node: Dynamic Extensions873528
+ Node: Internals874904
+ Node: Plugin License884007
+ Node: Sample Library884641
+ Node: Internal File Description885327
+ Node: Internal File Ops889042
+ Ref: Internal File Ops-Footnote-1893823
+ Node: Using Internal File Ops893963
+ Node: Future Extensions896340
+ Node: Basic Concepts898844
+ Node: Basic High Level899601
+ Ref: Basic High Level-Footnote-1903636
+ Node: Basic Data Typing903821
+ Node: Floating Point Issues908346
+ Node: String Conversion Precision909429
+ Ref: String Conversion Precision-Footnote-1911129
+ Node: Unexpected Results911238
+ Node: POSIX Floating Point Problems913064
+ Ref: POSIX Floating Point Problems-Footnote-1916769
+ Node: Glossary916807
+ Node: Copying941982
+ Node: GNU Free Documentation License979539
+ Node: Index1004676
++>>>>>>> gawk-4.0-stable
  
  End Tag Table

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=f33a496757d52c15fe0ec1e20bc20bd68d07dfa5

commit f33a496757d52c15fe0ec1e20bc20bd68d07dfa5
Author: Arnold D. Robbins <address@hidden>
Date:   Sun Jan 6 17:38:57 2013 +0200

    Add Software Tools quote in lib chapter.

diff --git a/doc/ChangeLog b/doc/ChangeLog
index 9897a28..477e6e9 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,7 @@
+2013-01-06         Arnold D. Robbins     <address@hidden>
+
+       * gawk.texi: Add Software Tools quote in chapter on library functions.
+
 2012-12-25         Arnold D. Robbins     <address@hidden>
 
        * gawk.texi: Remove doc sym_constant() API function.
diff --git a/doc/gawk.info b/doc/gawk.info
index 50d2353..12a3b4c 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -13454,10 +13454,21 @@ algorithms and program tasks in a single place.  It 
simplifies
 programming, making program development more manageable, and making
 programs more readable.
 
-   One valuable way to learn a new programming language is to _read_
-programs in that language.  To that end, this major node and *note
-Sample Programs::, provide a good-sized body of code for you to read,
-and hopefully, to learn from.
+   In their seminal 1976 book, `Software Tools'(1), Brian Kernighan and
+P.J. Plauger wrote:
+
+     Good Programming is not learned from generalities, but by seeing
+     how significant programs can be made clean, easy to read, easy to
+     maintain and modify, human-engineered, efficient and reliable, by
+     the application of common sense and good programming practices.
+     Careful study and imitation of good programs leads to better
+     writing.
+
+   In fact, they felt this idea was so important that they placed this
+statement on the cover of their book.  Because we believe strongly that
+their statement is correct, this major node and *note Sample
+Programs::, provide a good-sized body of code for you to read, and we
+hope, to learn from.
 
    This major node presents a library of useful `awk' functions.  Many
 of the sample programs presented later in this Info file use these
@@ -13486,7 +13497,7 @@ for different implementations of `awk' is pretty 
straightforward.
 
    * Finally, some of the programs choose to ignore upper- and lowercase
      distinctions in their input. They do so by assigning one to
-     `IGNORECASE'.  You can achieve almost the same effect(1) by adding
+     `IGNORECASE'.  You can achieve almost the same effect(2) by adding
      the following rule to the beginning of the program:
 
           # ignore case
@@ -13510,7 +13521,10 @@ for different implementations of `awk' is pretty 
straightforward.
 
    ---------- Footnotes ----------
 
-   (1) The effects are not identical.  Output of the transformed record
+   (1) Sadly, over 35 years later, many of the lessons taught by this
+book have yet to be learned by a vast number of practicing programmers.
+
+   (2) The effects are not identical.  Output of the transformed record
 will be in all lowercase, while `IGNORECASE' preserves the original
 contents of the input record.
 
@@ -29701,7 +29715,7 @@ Index
 * case keyword:                          Switch Statement.    (line   6)
 * case sensitivity, array indices and:   Array Intro.         (line  92)
 * case sensitivity, converting case:     String Functions.    (line 522)
-* case sensitivity, example programs:    Library Functions.   (line  42)
+* case sensitivity, example programs:    Library Functions.   (line  53)
 * case sensitivity, gawk:                Case-sensitivity.    (line  26)
 * case sensitivity, regexps and <1>:     User-modified.       (line  82)
 * case sensitivity, regexps and:         Case-sensitivity.    (line   6)
@@ -30652,7 +30666,7 @@ Index
                                                               (line  81)
 * IGNORECASE variable, array subscripts and: Array Intro.     (line  92)
 * IGNORECASE variable, in example programs: Library Functions.
-                                                              (line  42)
+                                                              (line  53)
 * implementation issues, gawk:           Notes.               (line   6)
 * implementation issues, gawk, debugging: Compatibility Mode. (line   6)
 * implementation issues, gawk, limits <1>: Redirection.       (line 135)
@@ -31102,7 +31116,7 @@ Index
                                                               (line  81)
 * portability, data files as single record: Records.          (line 180)
 * portability, deleting array elements:  Delete.              (line  56)
-* portability, example programs:         Library Functions.   (line  31)
+* portability, example programs:         Library Functions.   (line  42)
 * portability, fflush() function and:    I/O Functions.       (line  29)
 * portability, functions, defining:      Definition Syntax.   (line  99)
 * portability, gawk:                     New Ports.           (line   6)
@@ -31602,7 +31616,7 @@ Index
                                                               (line  80)
 * Texinfo <3>:                           Extract Program.     (line  12)
 * Texinfo <4>:                           Dupword Program.     (line  17)
-* Texinfo <5>:                           Library Functions.   (line  22)
+* Texinfo <5>:                           Library Functions.   (line  33)
 * Texinfo <6>:                           Sample Data Files.   (line  66)
 * Texinfo:                               Conventions.         (line   6)
 * Texinfo, chapter beginnings in files:  Regexp Operators.    (line  22)
@@ -32083,267 +32097,268 @@ Node: Return Statement547155
 Node: Dynamic Typing550136
 Node: Indirect Calls550871
 Node: Library Functions560556
-Ref: Library Functions-Footnote-1563555
-Node: Library Names563726
-Ref: Library Names-Footnote-1567197
-Ref: Library Names-Footnote-2567417
-Node: General Functions567503
-Node: Strtonum Function568456
-Node: Assert Function571386
-Node: Round Function574712
-Node: Cliff Random Function576255
-Node: Ordinal Functions577271
-Ref: Ordinal Functions-Footnote-1580341
-Ref: Ordinal Functions-Footnote-2580593
-Node: Join Function580802
-Ref: Join Function-Footnote-1582573
-Node: Getlocaltime Function582773
-Node: Data File Management586488
-Node: Filetrans Function587120
-Node: Rewind Function591259
-Node: File Checking592646
-Node: Empty Files593740
-Node: Ignoring Assigns595970
-Node: Getopt Function597523
-Ref: Getopt Function-Footnote-1608827
-Node: Passwd Functions609030
-Ref: Passwd Functions-Footnote-1618005
-Node: Group Functions618093
-Node: Walking Arrays626177
-Node: Sample Programs627746
-Node: Running Examples628423
-Node: Clones629151
-Node: Cut Program630375
-Node: Egrep Program640220
-Ref: Egrep Program-Footnote-1647993
-Node: Id Program648103
-Node: Split Program651719
-Ref: Split Program-Footnote-1655238
-Node: Tee Program655366
-Node: Uniq Program658169
-Node: Wc Program665598
-Ref: Wc Program-Footnote-1669864
-Ref: Wc Program-Footnote-2670064
-Node: Miscellaneous Programs670156
-Node: Dupword Program671344
-Node: Alarm Program673375
-Node: Translate Program678124
-Ref: Translate Program-Footnote-1682511
-Ref: Translate Program-Footnote-2682739
-Node: Labels Program682873
-Ref: Labels Program-Footnote-1686244
-Node: Word Sorting686328
-Node: History Sorting690212
-Node: Extract Program692051
-Ref: Extract Program-Footnote-1699534
-Node: Simple Sed699662
-Node: Igawk Program702724
-Ref: Igawk Program-Footnote-1717881
-Ref: Igawk Program-Footnote-2718082
-Node: Anagram Program718220
-Node: Signature Program721288
-Node: Internationalization722388
-Node: I18N and L10N723820
-Node: Explaining gettext724506
-Ref: Explaining gettext-Footnote-1729572
-Ref: Explaining gettext-Footnote-2729756
-Node: Programmer i18n729921
-Node: Translator i18n734121
-Node: String Extraction734914
-Ref: String Extraction-Footnote-1735875
-Node: Printf Ordering735961
-Ref: Printf Ordering-Footnote-1738745
-Node: I18N Portability738809
-Ref: I18N Portability-Footnote-1741258
-Node: I18N Example741321
-Ref: I18N Example-Footnote-1743956
-Node: Gawk I18N744028
-Node: Advanced Features744645
-Node: Nondecimal Data746149
-Node: Array Sorting747732
-Node: Controlling Array Traversal748429
-Node: Array Sorting Functions756667
-Ref: Array Sorting Functions-Footnote-1760341
-Ref: Array Sorting Functions-Footnote-2760434
-Node: Two-way I/O760628
-Ref: Two-way I/O-Footnote-1766060
-Node: TCP/IP Networking766130
-Node: Profiling768974
-Node: Debugger776428
-Node: Debugging777396
-Node: Debugging Concepts777829
-Node: Debugging Terms779685
-Node: Awk Debugging782282
-Node: Sample Debugging Session783174
-Node: Debugger Invocation783694
-Node: Finding The Bug785023
-Node: List of Debugger Commands791511
-Node: Breakpoint Control792845
-Node: Debugger Execution Control796509
-Node: Viewing And Changing Data799869
-Node: Execution Stack803225
-Node: Debugger Info804692
-Node: Miscellaneous Debugger Commands808673
-Node: Readline Support814118
-Node: Limitations814949
-Node: Arbitrary Precision Arithmetic817201
-Ref: Arbitrary Precision Arithmetic-Footnote-1818843
-Node: General Arithmetic818991
-Node: Floating Point Issues820711
-Node: String Conversion Precision821592
-Ref: String Conversion Precision-Footnote-1823298
-Node: Unexpected Results823407
-Node: POSIX Floating Point Problems825560
-Ref: POSIX Floating Point Problems-Footnote-1829385
-Node: Integer Programming829423
-Node: Floating-point Programming831176
-Ref: Floating-point Programming-Footnote-1837485
-Node: Floating-point Representation837749
-Node: Floating-point Context838914
-Ref: table-ieee-formats839756
-Node: Rounding Mode841140
-Ref: table-rounding-modes841619
-Ref: Rounding Mode-Footnote-1844623
-Node: Gawk and MPFR844804
-Node: Arbitrary Precision Floats846046
-Ref: Arbitrary Precision Floats-Footnote-1848475
-Node: Setting Precision848786
-Node: Setting Rounding Mode851519
-Ref: table-gawk-rounding-modes851923
-Node: Floating-point Constants853103
-Node: Changing Precision854527
-Ref: Changing Precision-Footnote-1855927
-Node: Exact Arithmetic856101
-Node: Arbitrary Precision Integers859209
-Ref: Arbitrary Precision Integers-Footnote-1862209
-Node: Dynamic Extensions862356
-Node: Extension Intro863733
-Node: Plugin License864941
-Node: Extension Mechanism Outline865626
-Ref: load-extension866043
-Ref: load-new-function867521
-Ref: call-new-function868502
-Node: Extension API Description870496
-Node: Extension API Functions Introduction871835
-Node: General Data Types876613
-Ref: General Data Types-Footnote-1882215
-Node: Requesting Values882514
-Ref: table-value-types-returned883245
-Node: Constructor Functions884199
-Node: Registration Functions887195
-Node: Extension Functions887880
-Node: Exit Callback Functions890054
-Node: Extension Version String891297
-Node: Input Parsers891947
-Node: Output Wrappers901664
-Node: Two-way processors906080
-Node: Printing Messages908210
-Ref: Printing Messages-Footnote-1909287
-Node: Updating `ERRNO'909439
-Node: Accessing Parameters910178
-Node: Symbol Table Access911408
-Node: Symbol table by name911920
-Node: Symbol table by cookie913493
-Ref: Symbol table by cookie-Footnote-1917622
-Node: Cached values917685
-Ref: Cached values-Footnote-1921128
-Node: Array Manipulation921219
-Ref: Array Manipulation-Footnote-1922317
-Node: Array Data Types922356
-Ref: Array Data Types-Footnote-1925059
-Node: Array Functions925151
-Node: Flattening Arrays928917
-Node: Creating Arrays935756
-Node: Extension API Variables940551
-Node: Extension Versioning941187
-Node: Extension API Informational Variables943088
-Node: Extension API Boilerplate944174
-Node: Finding Extensions948005
-Node: Extension Example948552
-Node: Internal File Description949290
-Node: Internal File Ops952978
-Ref: Internal File Ops-Footnote-1964425
-Node: Using Internal File Ops964565
-Ref: Using Internal File Ops-Footnote-1966918
-Node: Extension Samples967184
-Node: Extension Sample File Functions968627
-Node: Extension Sample Fnmatch977100
-Node: Extension Sample Fork978826
-Node: Extension Sample Ord980040
-Node: Extension Sample Readdir980816
-Node: Extension Sample Revout982320
-Node: Extension Sample Rev2way982913
-Node: Extension Sample Read write array983603
-Node: Extension Sample Readfile985486
-Node: Extension Sample API Tests986241
-Node: Extension Sample Time986766
-Node: gawkextlib988073
-Node: Language History990454
-Node: V7/SVR3.1991976
-Node: SVR4994297
-Node: POSIX995739
-Node: BTL996747
-Node: POSIX/GNU997552
-Node: Common Extensions1003087
-Node: Ranges and Locales1004146
-Ref: Ranges and Locales-Footnote-11008764
-Ref: Ranges and Locales-Footnote-21008791
-Ref: Ranges and Locales-Footnote-31009051
-Node: Contributors1009272
-Node: Installation1013568
-Node: Gawk Distribution1014462
-Node: Getting1014946
-Node: Extracting1015772
-Node: Distribution contents1017464
-Node: Unix Installation1022725
-Node: Quick Installation1023342
-Node: Additional Configuration Options1025304
-Node: Configuration Philosophy1026781
-Node: Non-Unix Installation1029123
-Node: PC Installation1029581
-Node: PC Binary Installation1030880
-Node: PC Compiling1032728
-Node: PC Testing1035672
-Node: PC Using1036848
-Node: Cygwin1041033
-Node: MSYS1042033
-Node: VMS Installation1042547
-Node: VMS Compilation1043150
-Ref: VMS Compilation-Footnote-11044157
-Node: VMS Installation Details1044215
-Node: VMS Running1045850
-Node: VMS Old Gawk1047457
-Node: Bugs1047931
-Node: Other Versions1051783
-Node: Notes1057098
-Node: Compatibility Mode1057898
-Node: Additions1058681
-Node: Accessing The Source1059608
-Node: Adding Code1061211
-Node: New Ports1067253
-Node: Derived Files1071388
-Ref: Derived Files-Footnote-11076709
-Ref: Derived Files-Footnote-21076743
-Ref: Derived Files-Footnote-31077343
-Node: Future Extensions1077441
-Node: Implementation Limitations1078022
-Node: Extension Design1079274
-Node: Old Extension Problems1080423
-Ref: Old Extension Problems-Footnote-11081931
-Node: Extension New Mechanism Goals1081988
-Ref: Extension New Mechanism Goals-Footnote-11085347
-Node: Extension Other Design Decisions1085533
-Node: Extension Future Growth1087639
-Node: Old Extension Mechansim1088460
-Node: Basic Concepts1090217
-Node: Basic High Level1090898
-Ref: figure-general-flow1091169
-Ref: figure-process-flow1091768
-Ref: Basic High Level-Footnote-11094997
-Node: Basic Data Typing1095182
-Node: Glossary1098537
-Node: Copying1123848
-Node: GNU Free Documentation License1161405
-Node: Index1186542
+Ref: Library Functions-Footnote-1564069
+Ref: Library Functions-Footnote-2564212
+Node: Library Names564383
+Ref: Library Names-Footnote-1567854
+Ref: Library Names-Footnote-2568074
+Node: General Functions568160
+Node: Strtonum Function569113
+Node: Assert Function572043
+Node: Round Function575369
+Node: Cliff Random Function576912
+Node: Ordinal Functions577928
+Ref: Ordinal Functions-Footnote-1580998
+Ref: Ordinal Functions-Footnote-2581250
+Node: Join Function581459
+Ref: Join Function-Footnote-1583230
+Node: Getlocaltime Function583430
+Node: Data File Management587145
+Node: Filetrans Function587777
+Node: Rewind Function591916
+Node: File Checking593303
+Node: Empty Files594397
+Node: Ignoring Assigns596627
+Node: Getopt Function598180
+Ref: Getopt Function-Footnote-1609484
+Node: Passwd Functions609687
+Ref: Passwd Functions-Footnote-1618662
+Node: Group Functions618750
+Node: Walking Arrays626834
+Node: Sample Programs628403
+Node: Running Examples629080
+Node: Clones629808
+Node: Cut Program631032
+Node: Egrep Program640877
+Ref: Egrep Program-Footnote-1648650
+Node: Id Program648760
+Node: Split Program652376
+Ref: Split Program-Footnote-1655895
+Node: Tee Program656023
+Node: Uniq Program658826
+Node: Wc Program666255
+Ref: Wc Program-Footnote-1670521
+Ref: Wc Program-Footnote-2670721
+Node: Miscellaneous Programs670813
+Node: Dupword Program672001
+Node: Alarm Program674032
+Node: Translate Program678781
+Ref: Translate Program-Footnote-1683168
+Ref: Translate Program-Footnote-2683396
+Node: Labels Program683530
+Ref: Labels Program-Footnote-1686901
+Node: Word Sorting686985
+Node: History Sorting690869
+Node: Extract Program692708
+Ref: Extract Program-Footnote-1700191
+Node: Simple Sed700319
+Node: Igawk Program703381
+Ref: Igawk Program-Footnote-1718538
+Ref: Igawk Program-Footnote-2718739
+Node: Anagram Program718877
+Node: Signature Program721945
+Node: Internationalization723045
+Node: I18N and L10N724477
+Node: Explaining gettext725163
+Ref: Explaining gettext-Footnote-1730229
+Ref: Explaining gettext-Footnote-2730413
+Node: Programmer i18n730578
+Node: Translator i18n734778
+Node: String Extraction735571
+Ref: String Extraction-Footnote-1736532
+Node: Printf Ordering736618
+Ref: Printf Ordering-Footnote-1739402
+Node: I18N Portability739466
+Ref: I18N Portability-Footnote-1741915
+Node: I18N Example741978
+Ref: I18N Example-Footnote-1744613
+Node: Gawk I18N744685
+Node: Advanced Features745302
+Node: Nondecimal Data746806
+Node: Array Sorting748389
+Node: Controlling Array Traversal749086
+Node: Array Sorting Functions757324
+Ref: Array Sorting Functions-Footnote-1760998
+Ref: Array Sorting Functions-Footnote-2761091
+Node: Two-way I/O761285
+Ref: Two-way I/O-Footnote-1766717
+Node: TCP/IP Networking766787
+Node: Profiling769631
+Node: Debugger777085
+Node: Debugging778053
+Node: Debugging Concepts778486
+Node: Debugging Terms780342
+Node: Awk Debugging782939
+Node: Sample Debugging Session783831
+Node: Debugger Invocation784351
+Node: Finding The Bug785680
+Node: List of Debugger Commands792168
+Node: Breakpoint Control793502
+Node: Debugger Execution Control797166
+Node: Viewing And Changing Data800526
+Node: Execution Stack803882
+Node: Debugger Info805349
+Node: Miscellaneous Debugger Commands809330
+Node: Readline Support814775
+Node: Limitations815606
+Node: Arbitrary Precision Arithmetic817858
+Ref: Arbitrary Precision Arithmetic-Footnote-1819500
+Node: General Arithmetic819648
+Node: Floating Point Issues821368
+Node: String Conversion Precision822249
+Ref: String Conversion Precision-Footnote-1823955
+Node: Unexpected Results824064
+Node: POSIX Floating Point Problems826217
+Ref: POSIX Floating Point Problems-Footnote-1830042
+Node: Integer Programming830080
+Node: Floating-point Programming831833
+Ref: Floating-point Programming-Footnote-1838142
+Node: Floating-point Representation838406
+Node: Floating-point Context839571
+Ref: table-ieee-formats840413
+Node: Rounding Mode841797
+Ref: table-rounding-modes842276
+Ref: Rounding Mode-Footnote-1845280
+Node: Gawk and MPFR845461
+Node: Arbitrary Precision Floats846703
+Ref: Arbitrary Precision Floats-Footnote-1849132
+Node: Setting Precision849443
+Node: Setting Rounding Mode852176
+Ref: table-gawk-rounding-modes852580
+Node: Floating-point Constants853760
+Node: Changing Precision855184
+Ref: Changing Precision-Footnote-1856584
+Node: Exact Arithmetic856758
+Node: Arbitrary Precision Integers859866
+Ref: Arbitrary Precision Integers-Footnote-1862866
+Node: Dynamic Extensions863013
+Node: Extension Intro864390
+Node: Plugin License865598
+Node: Extension Mechanism Outline866283
+Ref: load-extension866700
+Ref: load-new-function868178
+Ref: call-new-function869159
+Node: Extension API Description871153
+Node: Extension API Functions Introduction872492
+Node: General Data Types877270
+Ref: General Data Types-Footnote-1882872
+Node: Requesting Values883171
+Ref: table-value-types-returned883902
+Node: Constructor Functions884856
+Node: Registration Functions887852
+Node: Extension Functions888537
+Node: Exit Callback Functions890711
+Node: Extension Version String891954
+Node: Input Parsers892604
+Node: Output Wrappers902321
+Node: Two-way processors906737
+Node: Printing Messages908867
+Ref: Printing Messages-Footnote-1909944
+Node: Updating `ERRNO'910096
+Node: Accessing Parameters910835
+Node: Symbol Table Access912065
+Node: Symbol table by name912577
+Node: Symbol table by cookie914150
+Ref: Symbol table by cookie-Footnote-1918279
+Node: Cached values918342
+Ref: Cached values-Footnote-1921785
+Node: Array Manipulation921876
+Ref: Array Manipulation-Footnote-1922974
+Node: Array Data Types923013
+Ref: Array Data Types-Footnote-1925716
+Node: Array Functions925808
+Node: Flattening Arrays929574
+Node: Creating Arrays936413
+Node: Extension API Variables941208
+Node: Extension Versioning941844
+Node: Extension API Informational Variables943745
+Node: Extension API Boilerplate944831
+Node: Finding Extensions948662
+Node: Extension Example949209
+Node: Internal File Description949947
+Node: Internal File Ops953635
+Ref: Internal File Ops-Footnote-1965082
+Node: Using Internal File Ops965222
+Ref: Using Internal File Ops-Footnote-1967575
+Node: Extension Samples967841
+Node: Extension Sample File Functions969284
+Node: Extension Sample Fnmatch977757
+Node: Extension Sample Fork979483
+Node: Extension Sample Ord980697
+Node: Extension Sample Readdir981473
+Node: Extension Sample Revout982977
+Node: Extension Sample Rev2way983570
+Node: Extension Sample Read write array984260
+Node: Extension Sample Readfile986143
+Node: Extension Sample API Tests986898
+Node: Extension Sample Time987423
+Node: gawkextlib988730
+Node: Language History991111
+Node: V7/SVR3.1992633
+Node: SVR4994954
+Node: POSIX996396
+Node: BTL997404
+Node: POSIX/GNU998209
+Node: Common Extensions1003744
+Node: Ranges and Locales1004803
+Ref: Ranges and Locales-Footnote-11009421
+Ref: Ranges and Locales-Footnote-21009448
+Ref: Ranges and Locales-Footnote-31009708
+Node: Contributors1009929
+Node: Installation1014225
+Node: Gawk Distribution1015119
+Node: Getting1015603
+Node: Extracting1016429
+Node: Distribution contents1018121
+Node: Unix Installation1023382
+Node: Quick Installation1023999
+Node: Additional Configuration Options1025961
+Node: Configuration Philosophy1027438
+Node: Non-Unix Installation1029780
+Node: PC Installation1030238
+Node: PC Binary Installation1031537
+Node: PC Compiling1033385
+Node: PC Testing1036329
+Node: PC Using1037505
+Node: Cygwin1041690
+Node: MSYS1042690
+Node: VMS Installation1043204
+Node: VMS Compilation1043807
+Ref: VMS Compilation-Footnote-11044814
+Node: VMS Installation Details1044872
+Node: VMS Running1046507
+Node: VMS Old Gawk1048114
+Node: Bugs1048588
+Node: Other Versions1052440
+Node: Notes1057755
+Node: Compatibility Mode1058555
+Node: Additions1059338
+Node: Accessing The Source1060265
+Node: Adding Code1061868
+Node: New Ports1067910
+Node: Derived Files1072045
+Ref: Derived Files-Footnote-11077366
+Ref: Derived Files-Footnote-21077400
+Ref: Derived Files-Footnote-31078000
+Node: Future Extensions1078098
+Node: Implementation Limitations1078679
+Node: Extension Design1079931
+Node: Old Extension Problems1081080
+Ref: Old Extension Problems-Footnote-11082588
+Node: Extension New Mechanism Goals1082645
+Ref: Extension New Mechanism Goals-Footnote-11086004
+Node: Extension Other Design Decisions1086190
+Node: Extension Future Growth1088296
+Node: Old Extension Mechansim1089117
+Node: Basic Concepts1090874
+Node: Basic High Level1091555
+Ref: figure-general-flow1091826
+Ref: figure-process-flow1092425
+Ref: Basic High Level-Footnote-11095654
+Node: Basic Data Typing1095839
+Node: Glossary1099194
+Node: Copying1124505
+Node: GNU Free Documentation License1162062
+Node: Index1187199
 
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 575e9ab..e058262 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -18010,11 +18010,24 @@ it allows you to encapsulate algorithms and program 
tasks in a single
 place.  It simplifies programming, making program development more
 manageable, and making programs more readable.
 
-One valuable way to learn a new programming language is to @emph{read}
-programs in that language.  To that end, this @value{CHAPTER}
-and @ref{Sample Programs},
-provide a good-sized body of code for you to read,
-and hopefully, to learn from.
+In their seminal 1976 book, @cite{Software address@hidden, over 35
+years later, many of the lessons taught by this book have yet to be
+learned by a vast number of practicing programmers.}, Brian Kernighan
+and P.J.@: Plauger wrote:
+
address@hidden
+Good Programming is not learned from generalities, but by seeing how
+significant programs can be made clean, easy to read, easy to maintain and
+modify, human-engineered, efficient and reliable, by the application of
+common sense and good programming practices.  Careful study and imitation
+of good programs leads to better writing.
address@hidden quotation
+
+In fact, they felt this idea was so important that they placed this
+statement on the cover of their book.  Because we believe strongly
+that their statement is correct, this @value{CHAPTER} and @ref{Sample
+Programs}, provide a good-sized body of code for you to read, and we hope,
+to learn from.
 
 @c 2e: USE TEXINFO-2 FUNCTION DEFINITION STUFF!!!!!!!!!!!!!
 This @value{CHAPTER} presents a library of useful @command{awk} functions.

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=6b4dccf6db4dcaaff9f5a58baeee21329635ec18

commit 6b4dccf6db4dcaaff9f5a58baeee21329635ec18
Author: Arnold D. Robbins <address@hidden>
Date:   Sun Jan 6 17:36:58 2013 +0200

    Move old extension stuff into a separate directory.

diff --git a/old-extension/ChangeLog b/old-extension/ChangeLog
new file mode 100644
index 0000000..a25295a
--- /dev/null
+++ b/old-extension/ChangeLog
@@ -0,0 +1,6 @@
+2013-01-06         Arnold D. Robbins     <address@hidden>
+
+       * bindarr.c, dbarray.awk, fileop.c, record.awk, sparr.c,
+       spec_array.c, spec_array.h, steps, testdbarray.awk, testrecord.sh,
+       testsparr.awk: Moved here from extension directory, since they
+       use the old mechanism.
diff --git a/extension/bindarr.c b/old-extension/bindarr.c
similarity index 100%
rename from extension/bindarr.c
rename to old-extension/bindarr.c
diff --git a/extension/dbarray.awk b/old-extension/dbarray.awk
similarity index 100%
rename from extension/dbarray.awk
rename to old-extension/dbarray.awk
diff --git a/extension/fileop.c b/old-extension/fileop.c
similarity index 100%
rename from extension/fileop.c
rename to old-extension/fileop.c
diff --git a/extension/record.awk b/old-extension/record.awk
similarity index 100%
rename from extension/record.awk
rename to old-extension/record.awk
diff --git a/extension/sparr.c b/old-extension/sparr.c
similarity index 100%
rename from extension/sparr.c
rename to old-extension/sparr.c
diff --git a/extension/spec_array.c b/old-extension/spec_array.c
similarity index 100%
rename from extension/spec_array.c
rename to old-extension/spec_array.c
diff --git a/extension/spec_array.h b/old-extension/spec_array.h
similarity index 100%
rename from extension/spec_array.h
rename to old-extension/spec_array.h
diff --git a/extension/steps b/old-extension/steps
similarity index 100%
rename from extension/steps
rename to old-extension/steps
diff --git a/extension/testdbarray.awk b/old-extension/testdbarray.awk
similarity index 100%
rename from extension/testdbarray.awk
rename to old-extension/testdbarray.awk
diff --git a/extension/testrecord.sh b/old-extension/testrecord.sh
similarity index 100%
rename from extension/testrecord.sh
rename to old-extension/testrecord.sh
diff --git a/extension/testsparr.awk b/old-extension/testsparr.awk
similarity index 100%
rename from extension/testsparr.awk
rename to old-extension/testsparr.awk

-----------------------------------------------------------------------

Summary of changes:
 doc/ChangeLog                                |    6 +
 doc/awkcard.in                               |   14 +-
 doc/gawk.info                                | 1062 +++++++++++++++++++-------
 doc/gawk.texi                                |   39 +-
 old-extension/ChangeLog                      |    6 +
 {extension => old-extension}/bindarr.c       |    0
 {extension => old-extension}/dbarray.awk     |    0
 {extension => old-extension}/fileop.c        |    0
 {extension => old-extension}/record.awk      |    0
 {extension => old-extension}/sparr.c         |    0
 {extension => old-extension}/spec_array.c    |    0
 {extension => old-extension}/spec_array.h    |    0
 {extension => old-extension}/steps           |    0
 {extension => old-extension}/testdbarray.awk |    0
 {extension => old-extension}/testrecord.sh   |    0
 {extension => old-extension}/testsparr.awk   |    0
 16 files changed, 836 insertions(+), 291 deletions(-)
 create mode 100644 old-extension/ChangeLog
 rename {extension => old-extension}/bindarr.c (100%)
 rename {extension => old-extension}/dbarray.awk (100%)
 rename {extension => old-extension}/fileop.c (100%)
 rename {extension => old-extension}/record.awk (100%)
 rename {extension => old-extension}/sparr.c (100%)
 rename {extension => old-extension}/spec_array.c (100%)
 rename {extension => old-extension}/spec_array.h (100%)
 rename {extension => old-extension}/steps (100%)
 rename {extension => old-extension}/testdbarray.awk (100%)
 rename {extension => old-extension}/testrecord.sh (100%)
 rename {extension => old-extension}/testsparr.awk (100%)


hooks/post-receive
-- 
gawk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]