aboutsummaryrefslogtreecommitdiffstats
path: root/doc/gawk.info
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gawk.info')
-rw-r--r--doc/gawk.info771
1 files changed, 347 insertions, 424 deletions
diff --git a/doc/gawk.info b/doc/gawk.info
index 14d34a98..b57abbd3 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -12380,24 +12380,6 @@ brackets ([ ]):
truncated toward zero. For example, 'int(3)' is 3, 'int(3.9)' is
3, 'int(-3.9)' is -3, and 'int(-3)' is -3 as well.
-'intdiv(NUMERATOR, DENOMINATOR, RESULT)'
- Perform integer division, similar to the standard C 'div()'
- function. First, truncate 'numerator' and 'denominator' towards
- zero, creating integer values. Clear the 'result' array, and then
- set 'result["quotient"]' to the result of 'numerator /
- denominator', truncated towards zero to an integer, and set
- 'result["remainder"]' to the result of 'numerator % denominator',
- truncated towards zero to an integer. Attempting division by zero
- causes a fatal error. The function returns zero upon success, and
- -1 upon error.
-
- This function is primarily intended for use with arbitrary length
- integers; it avoids creating MPFR arbitrary precision
- floating-point values (*note Arbitrary Precision Integers::).
-
- This function is a 'gawk' extension. It is not available in
- compatibility mode (*note Options::).
-
'log(X)'
Return the natural logarithm of X, if X is positive; otherwise,
return 'NaN' ("not a number") on IEEE 754 systems. Additionally,
@@ -23194,59 +23176,7 @@ the following:
When dividing two arbitrary precision integers with either '/' or
'%', the result is typically an arbitrary precision floating point value
-(unless the denominator evenly divides into the numerator). In order to
-do integer division or remainder with arbitrary precision integers, use
-the built-in 'intdiv()' function (*note Numeric Functions::).
-
- You can simulate the 'intdiv()' function in standard 'awk' using this
-user-defined function:
-
- # intdiv --- do integer division
-
- function intdiv(numerator, denominator, result)
- {
- split("", result)
-
- numerator = int(numerator)
- denominator = int(denominator)
- result["quotient"] = int(numerator / denominator)
- result["remainder"] = int(numerator % denominator)
-
- return 0.0
- }
-
- The following example program, contributed by Katie Wasserman, uses
-'intdiv()' to compute the digits of pi to as many places as you choose
-to set:
-
- # pi.awk --- compute the digits of pi
-
- BEGIN {
- digits = 100000
- two = 2 * 10 ^ digits
- pi = two
- for (m = digits * 4; m > 0; --m) {
- d = m * 2 + 1
- x = pi * m
- intdiv(x, d, result)
- pi = result["quotient"]
- pi = pi + two
- }
- print pi
- }
-
- When asked about the algorithm used, Katie replied:
-
- It's not that well known but it's not that obscure either. It's
- Euler's modification to Newton's method for calculating pi. Take a
- look at lines (23) - (25) here:
- <http://mathworld.wolfram.com/PiFormulas.html>.
-
- The algorithm I wrote simply expands the multiply by 2 and works
- from the innermost expression outwards. I used this to program HP
- calculators because it's quite easy to modify for tiny memory
- devices with smallish word sizes. See
- <http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/articles.cgi?read=899>.
+(unless the denominator evenly divides into the numerator).
---------- Footnotes ----------
@@ -27521,9 +27451,6 @@ current version of 'gawk'.
- The 'bindtextdomain()', 'dcgettext()', and 'dcngettext()'
functions for internationalization (*note Programmer i18n::)
- - The 'intdiv()' function for doing integer division and
- remainder (*note Numeric Functions::)
-
* Changes and/or additions in the command-line options:
- The 'AWKPATH' environment variable for specifying a path
@@ -27986,8 +27913,6 @@ POSIX 'awk', in the order they were added to 'gawk'.
* The 'igawk' program and its manual page are no longer installed
when 'gawk' is built. *Note Igawk Program::.
- * The 'intdiv()' function. *Note Numeric Functions::.
-
* The maximum number of hexadecimal digits in '\x' escapes is now
two. *Note Escape Sequences::.
@@ -34397,8 +34322,6 @@ Index
* instruction tracing, in debugger: Debugger Info. (line 90)
* int: Numeric Functions. (line 24)
* INT signal (MS-Windows): Profiling. (line 212)
-* intdiv: Numeric Functions. (line 29)
-* intdiv <1>: Numeric Functions. (line 29)
* integer array indices: Numeric Array Subscripts.
(line 31)
* integers, arbitrary precision: Arbitrary Precision Integers.
@@ -34548,9 +34471,9 @@ Index
* localization: I18N and L10N. (line 6)
* localization, See internationalization, localization: I18N and L10N.
(line 6)
-* log: Numeric Functions. (line 47)
+* log: Numeric Functions. (line 29)
* log files, timestamps in: Time Functions. (line 6)
-* logarithm: Numeric Functions. (line 47)
+* logarithm: Numeric Functions. (line 29)
* logical false/true: Truth Values. (line 6)
* logical operators, See Boolean expressions: Boolean Ops. (line 6)
* login information: Passwd Functions. (line 16)
@@ -35013,12 +34936,12 @@ Index
* Rakitzis, Byron: History Sorting. (line 25)
* Ramey, Chet: Acknowledgments. (line 60)
* Ramey, Chet <1>: General Data Types. (line 6)
-* rand: Numeric Functions. (line 52)
+* rand: Numeric Functions. (line 34)
* random numbers, Cliff: Cliff Random Function.
(line 6)
* random numbers, rand()/srand() functions: Numeric Functions.
- (line 52)
-* random numbers, seed of: Numeric Functions. (line 82)
+ (line 34)
+* random numbers, seed of: Numeric Functions. (line 64)
* range expressions (regexps): Bracket Expressions. (line 6)
* range patterns: Ranges. (line 6)
* range patterns, line continuation and: Ranges. (line 64)
@@ -35196,7 +35119,7 @@ Index
* sed utility: Full Line Fields. (line 22)
* sed utility <1>: Simple Sed. (line 6)
* sed utility <2>: Glossary. (line 16)
-* seeding random number generator: Numeric Functions. (line 82)
+* seeding random number generator: Numeric Functions. (line 64)
* semicolon (;), AWKPATH variable and: PC Using. (line 9)
* semicolon (;), separating statements in actions: Statements/Lines.
(line 90)
@@ -35300,8 +35223,8 @@ Index
* SIGUSR1 signal, for dynamic profiling: Profiling. (line 186)
* silent debugger command: Debugger Execution Control.
(line 10)
-* sin: Numeric Functions. (line 93)
-* sine: Numeric Functions. (line 93)
+* sin: Numeric Functions. (line 75)
+* sine: Numeric Functions. (line 75)
* single quote ('): One-shot. (line 15)
* single quote (') in gawk command lines: Long. (line 35)
* single quote ('), in shell commands: Quoting. (line 48)
@@ -35351,10 +35274,10 @@ Index
* sprintf() function, OFMT variable and: User-modified. (line 116)
* sprintf() function, print/printf statements and: Round Function.
(line 6)
-* sqrt: Numeric Functions. (line 96)
+* sqrt: Numeric Functions. (line 78)
* square brackets ([]), regexp operator: Regexp Operators. (line 56)
-* square root: Numeric Functions. (line 96)
-* srand: Numeric Functions. (line 100)
+* square root: Numeric Functions. (line 78)
+* srand: Numeric Functions. (line 82)
* stack frame: Debugging Terms. (line 10)
* Stallman, Richard: Manual History. (line 6)
* Stallman, Richard <1>: Acknowledgments. (line 18)
@@ -35919,340 +35842,340 @@ Node: Functions520966
Node: Built-in522004
Node: Calling Built-in523085
Node: Numeric Functions525081
-Ref: Numeric Functions-Footnote-1530026
-Ref: Numeric Functions-Footnote-2530383
-Ref: Numeric Functions-Footnote-3530431
-Node: String Functions530703
-Ref: String Functions-Footnote-1554361
-Ref: String Functions-Footnote-2554489
-Ref: String Functions-Footnote-3554737
-Node: Gory Details554824
-Ref: table-sub-escapes556615
-Ref: table-sub-proposed558134
-Ref: table-posix-sub559497
-Ref: table-gensub-escapes561038
-Ref: Gory Details-Footnote-1561861
-Node: I/O Functions562015
-Ref: table-system-return-values568597
-Ref: I/O Functions-Footnote-1570577
-Ref: I/O Functions-Footnote-2570725
-Node: Time Functions570845
-Ref: Time Functions-Footnote-1581512
-Ref: Time Functions-Footnote-2581580
-Ref: Time Functions-Footnote-3581738
-Ref: Time Functions-Footnote-4581849
-Ref: Time Functions-Footnote-5581961
-Ref: Time Functions-Footnote-6582188
-Node: Bitwise Functions582454
-Ref: table-bitwise-ops583048
-Ref: Bitwise Functions-Footnote-1589081
-Ref: Bitwise Functions-Footnote-2589254
-Node: Type Functions589445
-Node: I18N Functions592120
-Node: User-defined593771
-Node: Definition Syntax594576
-Ref: Definition Syntax-Footnote-1600263
-Node: Function Example600334
-Ref: Function Example-Footnote-1603256
-Node: Function Caveats603278
-Node: Calling A Function603796
-Node: Variable Scope604754
-Node: Pass By Value/Reference607748
-Node: Return Statement611247
-Node: Dynamic Typing614226
-Node: Indirect Calls615156
-Ref: Indirect Calls-Footnote-1625407
-Node: Functions Summary625535
-Node: Library Functions628240
-Ref: Library Functions-Footnote-1631847
-Ref: Library Functions-Footnote-2631990
-Node: Library Names632161
-Ref: Library Names-Footnote-1635621
-Ref: Library Names-Footnote-2635844
-Node: General Functions635930
-Node: Strtonum Function637033
-Node: Assert Function640055
-Node: Round Function643381
-Node: Cliff Random Function644922
-Node: Ordinal Functions645938
-Ref: Ordinal Functions-Footnote-1649001
-Ref: Ordinal Functions-Footnote-2649253
-Node: Join Function649463
-Ref: Join Function-Footnote-1651233
-Node: Getlocaltime Function651433
-Node: Readfile Function655175
-Node: Shell Quoting657147
-Node: Data File Management658548
-Node: Filetrans Function659180
-Node: Rewind Function663276
-Node: File Checking665182
-Ref: File Checking-Footnote-1666516
-Node: Empty Files666717
-Node: Ignoring Assigns668696
-Node: Getopt Function670246
-Ref: Getopt Function-Footnote-1681715
-Node: Passwd Functions681915
-Ref: Passwd Functions-Footnote-1690754
-Node: Group Functions690842
-Ref: Group Functions-Footnote-1698740
-Node: Walking Arrays698947
-Node: Library Functions Summary701955
-Node: Library Exercises703361
-Node: Sample Programs703826
-Node: Running Examples704596
-Node: Clones705324
-Node: Cut Program706548
-Node: Egrep Program716477
-Ref: Egrep Program-Footnote-1723989
-Node: Id Program724099
-Node: Split Program727779
-Ref: Split Program-Footnote-1731238
-Node: Tee Program731367
-Node: Uniq Program734157
-Node: Wc Program741583
-Ref: Wc Program-Footnote-1745838
-Node: Miscellaneous Programs745932
-Node: Dupword Program747145
-Node: Alarm Program749175
-Node: Translate Program754030
-Ref: Translate Program-Footnote-1758595
-Node: Labels Program758865
-Ref: Labels Program-Footnote-1762216
-Node: Word Sorting762300
-Node: History Sorting766372
-Node: Extract Program768207
-Node: Simple Sed775736
-Node: Igawk Program778810
-Ref: Igawk Program-Footnote-1793141
-Ref: Igawk Program-Footnote-2793343
-Ref: Igawk Program-Footnote-3793465
-Node: Anagram Program793580
-Node: Signature Program796642
-Node: Programs Summary797889
-Node: Programs Exercises799103
-Ref: Programs Exercises-Footnote-1803232
-Node: Advanced Features803323
-Node: Nondecimal Data805313
-Node: Array Sorting806904
-Node: Controlling Array Traversal807604
-Ref: Controlling Array Traversal-Footnote-1815971
-Node: Array Sorting Functions816089
-Ref: Array Sorting Functions-Footnote-1821180
-Node: Two-way I/O821376
-Ref: Two-way I/O-Footnote-1827927
-Ref: Two-way I/O-Footnote-2828114
-Node: TCP/IP Networking828196
-Node: Profiling831314
-Ref: Profiling-Footnote-1839986
-Node: Advanced Features Summary840309
-Node: Internationalization842153
-Node: I18N and L10N843633
-Node: Explaining gettext844320
-Ref: Explaining gettext-Footnote-1850212
-Ref: Explaining gettext-Footnote-2850397
-Node: Programmer i18n850562
-Ref: Programmer i18n-Footnote-1855511
-Node: Translator i18n855560
-Node: String Extraction856354
-Ref: String Extraction-Footnote-1857486
-Node: Printf Ordering857572
-Ref: Printf Ordering-Footnote-1860358
-Node: I18N Portability860422
-Ref: I18N Portability-Footnote-1862878
-Node: I18N Example862941
-Ref: I18N Example-Footnote-1865747
-Node: Gawk I18N865820
-Node: I18N Summary866465
-Node: Debugger867806
-Node: Debugging868828
-Node: Debugging Concepts869269
-Node: Debugging Terms871078
-Node: Awk Debugging873653
-Node: Sample Debugging Session874559
-Node: Debugger Invocation875093
-Node: Finding The Bug876479
-Node: List of Debugger Commands882957
-Node: Breakpoint Control884290
-Node: Debugger Execution Control887984
-Node: Viewing And Changing Data891346
-Node: Execution Stack894720
-Node: Debugger Info896357
-Node: Miscellaneous Debugger Commands900428
-Node: Readline Support905516
-Node: Limitations906412
-Node: Debugging Summary908521
-Node: Arbitrary Precision Arithmetic909800
-Node: Computer Arithmetic911216
-Ref: table-numeric-ranges914807
-Ref: Computer Arithmetic-Footnote-1915529
-Node: Math Definitions915586
-Ref: table-ieee-formats918900
-Ref: Math Definitions-Footnote-1919503
-Node: MPFR features919608
-Node: FP Math Caution921325
-Ref: FP Math Caution-Footnote-1922397
-Node: Inexactness of computations922766
-Node: Inexact representation923726
-Node: Comparing FP Values925086
-Node: Errors accumulate926168
-Node: Getting Accuracy927601
-Node: Try To Round930311
-Node: Setting precision931210
-Ref: table-predefined-precision-strings931907
-Node: Setting the rounding mode933737
-Ref: table-gawk-rounding-modes934111
-Ref: Setting the rounding mode-Footnote-1937519
-Node: Arbitrary Precision Integers937698
-Ref: Arbitrary Precision Integers-Footnote-1942615
-Node: POSIX Floating Point Problems942764
-Ref: POSIX Floating Point Problems-Footnote-1946646
-Node: Floating point summary946684
-Node: Dynamic Extensions948874
-Node: Extension Intro950427
-Node: Plugin License951693
-Node: Extension Mechanism Outline952490
-Ref: figure-load-extension952929
-Ref: figure-register-new-function954494
-Ref: figure-call-new-function955586
-Node: Extension API Description957648
-Node: Extension API Functions Introduction959290
-Node: General Data Types964624
-Ref: General Data Types-Footnote-1971829
-Node: Memory Allocation Functions972128
-Ref: Memory Allocation Functions-Footnote-1974973
-Node: Constructor Functions975072
-Node: Registration Functions978071
-Node: Extension Functions978756
-Node: Exit Callback Functions983969
-Node: Extension Version String985219
-Node: Input Parsers985882
-Node: Output Wrappers998589
-Node: Two-way processors1003101
-Node: Printing Messages1005366
-Ref: Printing Messages-Footnote-11006537
-Node: Updating ERRNO1006690
-Node: Requesting Values1007429
-Ref: table-value-types-returned1008166
-Node: Accessing Parameters1009102
-Node: Symbol Table Access1010337
-Node: Symbol table by name1010849
-Node: Symbol table by cookie1012638
-Ref: Symbol table by cookie-Footnote-11016823
-Node: Cached values1016887
-Ref: Cached values-Footnote-11020423
-Node: Array Manipulation1020514
-Ref: Array Manipulation-Footnote-11021605
-Node: Array Data Types1021642
-Ref: Array Data Types-Footnote-11024300
-Node: Array Functions1024392
-Node: Flattening Arrays1028791
-Node: Creating Arrays1035732
-Node: Redirection API1040501
-Node: Extension API Variables1043343
-Node: Extension Versioning1043976
-Ref: gawk-api-version1044413
-Node: Extension API Informational Variables1046141
-Node: Extension API Boilerplate1047205
-Node: Changes from API V11051067
-Node: Finding Extensions1051727
-Node: Extension Example1052286
-Node: Internal File Description1053084
-Node: Internal File Ops1057164
-Ref: Internal File Ops-Footnote-11068564
-Node: Using Internal File Ops1068704
-Ref: Using Internal File Ops-Footnote-11071087
-Node: Extension Samples1071361
-Node: Extension Sample File Functions1072890
-Node: Extension Sample Fnmatch1080539
-Node: Extension Sample Fork1082026
-Node: Extension Sample Inplace1083244
-Node: Extension Sample Ord1086454
-Node: Extension Sample Readdir1087290
-Ref: table-readdir-file-types1088179
-Node: Extension Sample Revout1088984
-Node: Extension Sample Rev2way1089573
-Node: Extension Sample Read write array1090313
-Node: Extension Sample Readfile1092255
-Node: Extension Sample Time1093350
-Node: Extension Sample API Tests1094698
-Node: gawkextlib1095190
-Node: Extension summary1097637
-Node: Extension Exercises1101339
-Node: Language History1102837
-Node: V7/SVR3.11104493
-Node: SVR41106645
-Node: POSIX1108079
-Node: BTL1109458
-Node: POSIX/GNU1110187
-Node: Feature History1116079
-Node: Common Extensions1130449
-Node: Ranges and Locales1131732
-Ref: Ranges and Locales-Footnote-11136348
-Ref: Ranges and Locales-Footnote-21136375
-Ref: Ranges and Locales-Footnote-31136610
-Node: Contributors1136831
-Node: History summary1142391
-Node: Installation1143771
-Node: Gawk Distribution1144715
-Node: Getting1145199
-Node: Extracting1146160
-Node: Distribution contents1147798
-Node: Unix Installation1154140
-Node: Quick Installation1154822
-Node: Shell Startup Files1157236
-Node: Additional Configuration Options1158325
-Node: Configuration Philosophy1160314
-Node: Non-Unix Installation1162683
-Node: PC Installation1163143
-Node: PC Binary Installation1163981
-Node: PC Compiling1164416
-Node: PC Using1165533
-Node: Cygwin1168578
-Node: MSYS1169348
-Node: VMS Installation1169849
-Node: VMS Compilation1170640
-Ref: VMS Compilation-Footnote-11171869
-Node: VMS Dynamic Extensions1171927
-Node: VMS Installation Details1173612
-Node: VMS Running1175865
-Node: VMS GNV1180144
-Node: VMS Old Gawk1180879
-Node: Bugs1181350
-Node: Bug address1182013
-Node: Usenet1184410
-Node: Maintainers1185187
-Node: Other Versions1186563
-Node: Installation summary1193147
-Node: Notes1194182
-Node: Compatibility Mode1195047
-Node: Additions1195829
-Node: Accessing The Source1196754
-Node: Adding Code1198189
-Node: New Ports1204407
-Node: Derived Files1208895
-Ref: Derived Files-Footnote-11214380
-Ref: Derived Files-Footnote-21214415
-Ref: Derived Files-Footnote-31215013
-Node: Future Extensions1215127
-Node: Implementation Limitations1215785
-Node: Extension Design1216968
-Node: Old Extension Problems1218122
-Ref: Old Extension Problems-Footnote-11219640
-Node: Extension New Mechanism Goals1219697
-Ref: Extension New Mechanism Goals-Footnote-11223061
-Node: Extension Other Design Decisions1223250
-Node: Extension Future Growth1225363
-Node: Old Extension Mechanism1226199
-Node: Notes summary1227962
-Node: Basic Concepts1229144
-Node: Basic High Level1229825
-Ref: figure-general-flow1230107
-Ref: figure-process-flow1230792
-Ref: Basic High Level-Footnote-11234093
-Node: Basic Data Typing1234278
-Node: Glossary1237606
-Node: Copying1269553
-Node: GNU Free Documentation License1307092
-Node: Index1332210
+Ref: Numeric Functions-Footnote-1529109
+Ref: Numeric Functions-Footnote-2529466
+Ref: Numeric Functions-Footnote-3529514
+Node: String Functions529786
+Ref: String Functions-Footnote-1553444
+Ref: String Functions-Footnote-2553572
+Ref: String Functions-Footnote-3553820
+Node: Gory Details553907
+Ref: table-sub-escapes555698
+Ref: table-sub-proposed557217
+Ref: table-posix-sub558580
+Ref: table-gensub-escapes560121
+Ref: Gory Details-Footnote-1560944
+Node: I/O Functions561098
+Ref: table-system-return-values567680
+Ref: I/O Functions-Footnote-1569660
+Ref: I/O Functions-Footnote-2569808
+Node: Time Functions569928
+Ref: Time Functions-Footnote-1580595
+Ref: Time Functions-Footnote-2580663
+Ref: Time Functions-Footnote-3580821
+Ref: Time Functions-Footnote-4580932
+Ref: Time Functions-Footnote-5581044
+Ref: Time Functions-Footnote-6581271
+Node: Bitwise Functions581537
+Ref: table-bitwise-ops582131
+Ref: Bitwise Functions-Footnote-1588164
+Ref: Bitwise Functions-Footnote-2588337
+Node: Type Functions588528
+Node: I18N Functions591203
+Node: User-defined592854
+Node: Definition Syntax593659
+Ref: Definition Syntax-Footnote-1599346
+Node: Function Example599417
+Ref: Function Example-Footnote-1602339
+Node: Function Caveats602361
+Node: Calling A Function602879
+Node: Variable Scope603837
+Node: Pass By Value/Reference606831
+Node: Return Statement610330
+Node: Dynamic Typing613309
+Node: Indirect Calls614239
+Ref: Indirect Calls-Footnote-1624490
+Node: Functions Summary624618
+Node: Library Functions627323
+Ref: Library Functions-Footnote-1630930
+Ref: Library Functions-Footnote-2631073
+Node: Library Names631244
+Ref: Library Names-Footnote-1634704
+Ref: Library Names-Footnote-2634927
+Node: General Functions635013
+Node: Strtonum Function636116
+Node: Assert Function639138
+Node: Round Function642464
+Node: Cliff Random Function644005
+Node: Ordinal Functions645021
+Ref: Ordinal Functions-Footnote-1648084
+Ref: Ordinal Functions-Footnote-2648336
+Node: Join Function648546
+Ref: Join Function-Footnote-1650316
+Node: Getlocaltime Function650516
+Node: Readfile Function654258
+Node: Shell Quoting656230
+Node: Data File Management657631
+Node: Filetrans Function658263
+Node: Rewind Function662359
+Node: File Checking664265
+Ref: File Checking-Footnote-1665599
+Node: Empty Files665800
+Node: Ignoring Assigns667779
+Node: Getopt Function669329
+Ref: Getopt Function-Footnote-1680798
+Node: Passwd Functions680998
+Ref: Passwd Functions-Footnote-1689837
+Node: Group Functions689925
+Ref: Group Functions-Footnote-1697823
+Node: Walking Arrays698030
+Node: Library Functions Summary701038
+Node: Library Exercises702444
+Node: Sample Programs702909
+Node: Running Examples703679
+Node: Clones704407
+Node: Cut Program705631
+Node: Egrep Program715560
+Ref: Egrep Program-Footnote-1723072
+Node: Id Program723182
+Node: Split Program726862
+Ref: Split Program-Footnote-1730321
+Node: Tee Program730450
+Node: Uniq Program733240
+Node: Wc Program740666
+Ref: Wc Program-Footnote-1744921
+Node: Miscellaneous Programs745015
+Node: Dupword Program746228
+Node: Alarm Program748258
+Node: Translate Program753113
+Ref: Translate Program-Footnote-1757678
+Node: Labels Program757948
+Ref: Labels Program-Footnote-1761299
+Node: Word Sorting761383
+Node: History Sorting765455
+Node: Extract Program767290
+Node: Simple Sed774819
+Node: Igawk Program777893
+Ref: Igawk Program-Footnote-1792224
+Ref: Igawk Program-Footnote-2792426
+Ref: Igawk Program-Footnote-3792548
+Node: Anagram Program792663
+Node: Signature Program795725
+Node: Programs Summary796972
+Node: Programs Exercises798186
+Ref: Programs Exercises-Footnote-1802315
+Node: Advanced Features802406
+Node: Nondecimal Data804396
+Node: Array Sorting805987
+Node: Controlling Array Traversal806687
+Ref: Controlling Array Traversal-Footnote-1815054
+Node: Array Sorting Functions815172
+Ref: Array Sorting Functions-Footnote-1820263
+Node: Two-way I/O820459
+Ref: Two-way I/O-Footnote-1827010
+Ref: Two-way I/O-Footnote-2827197
+Node: TCP/IP Networking827279
+Node: Profiling830397
+Ref: Profiling-Footnote-1839069
+Node: Advanced Features Summary839392
+Node: Internationalization841236
+Node: I18N and L10N842716
+Node: Explaining gettext843403
+Ref: Explaining gettext-Footnote-1849295
+Ref: Explaining gettext-Footnote-2849480
+Node: Programmer i18n849645
+Ref: Programmer i18n-Footnote-1854594
+Node: Translator i18n854643
+Node: String Extraction855437
+Ref: String Extraction-Footnote-1856569
+Node: Printf Ordering856655
+Ref: Printf Ordering-Footnote-1859441
+Node: I18N Portability859505
+Ref: I18N Portability-Footnote-1861961
+Node: I18N Example862024
+Ref: I18N Example-Footnote-1864830
+Node: Gawk I18N864903
+Node: I18N Summary865548
+Node: Debugger866889
+Node: Debugging867911
+Node: Debugging Concepts868352
+Node: Debugging Terms870161
+Node: Awk Debugging872736
+Node: Sample Debugging Session873642
+Node: Debugger Invocation874176
+Node: Finding The Bug875562
+Node: List of Debugger Commands882040
+Node: Breakpoint Control883373
+Node: Debugger Execution Control887067
+Node: Viewing And Changing Data890429
+Node: Execution Stack893803
+Node: Debugger Info895440
+Node: Miscellaneous Debugger Commands899511
+Node: Readline Support904599
+Node: Limitations905495
+Node: Debugging Summary907604
+Node: Arbitrary Precision Arithmetic908883
+Node: Computer Arithmetic910299
+Ref: table-numeric-ranges913890
+Ref: Computer Arithmetic-Footnote-1914612
+Node: Math Definitions914669
+Ref: table-ieee-formats917983
+Ref: Math Definitions-Footnote-1918586
+Node: MPFR features918691
+Node: FP Math Caution920408
+Ref: FP Math Caution-Footnote-1921480
+Node: Inexactness of computations921849
+Node: Inexact representation922809
+Node: Comparing FP Values924169
+Node: Errors accumulate925251
+Node: Getting Accuracy926684
+Node: Try To Round929394
+Node: Setting precision930293
+Ref: table-predefined-precision-strings930990
+Node: Setting the rounding mode932820
+Ref: table-gawk-rounding-modes933194
+Ref: Setting the rounding mode-Footnote-1936602
+Node: Arbitrary Precision Integers936781
+Ref: Arbitrary Precision Integers-Footnote-1939968
+Node: POSIX Floating Point Problems940117
+Ref: POSIX Floating Point Problems-Footnote-1943999
+Node: Floating point summary944037
+Node: Dynamic Extensions946227
+Node: Extension Intro947780
+Node: Plugin License949046
+Node: Extension Mechanism Outline949843
+Ref: figure-load-extension950282
+Ref: figure-register-new-function951847
+Ref: figure-call-new-function952939
+Node: Extension API Description955001
+Node: Extension API Functions Introduction956643
+Node: General Data Types961977
+Ref: General Data Types-Footnote-1969182
+Node: Memory Allocation Functions969481
+Ref: Memory Allocation Functions-Footnote-1972326
+Node: Constructor Functions972425
+Node: Registration Functions975424
+Node: Extension Functions976109
+Node: Exit Callback Functions981322
+Node: Extension Version String982572
+Node: Input Parsers983235
+Node: Output Wrappers995942
+Node: Two-way processors1000454
+Node: Printing Messages1002719
+Ref: Printing Messages-Footnote-11003890
+Node: Updating ERRNO1004043
+Node: Requesting Values1004782
+Ref: table-value-types-returned1005519
+Node: Accessing Parameters1006455
+Node: Symbol Table Access1007690
+Node: Symbol table by name1008202
+Node: Symbol table by cookie1009991
+Ref: Symbol table by cookie-Footnote-11014176
+Node: Cached values1014240
+Ref: Cached values-Footnote-11017776
+Node: Array Manipulation1017867
+Ref: Array Manipulation-Footnote-11018958
+Node: Array Data Types1018995
+Ref: Array Data Types-Footnote-11021653
+Node: Array Functions1021745
+Node: Flattening Arrays1026144
+Node: Creating Arrays1033085
+Node: Redirection API1037854
+Node: Extension API Variables1040696
+Node: Extension Versioning1041329
+Ref: gawk-api-version1041766
+Node: Extension API Informational Variables1043494
+Node: Extension API Boilerplate1044558
+Node: Changes from API V11048420
+Node: Finding Extensions1049080
+Node: Extension Example1049639
+Node: Internal File Description1050437
+Node: Internal File Ops1054517
+Ref: Internal File Ops-Footnote-11065917
+Node: Using Internal File Ops1066057
+Ref: Using Internal File Ops-Footnote-11068440
+Node: Extension Samples1068714
+Node: Extension Sample File Functions1070243
+Node: Extension Sample Fnmatch1077892
+Node: Extension Sample Fork1079379
+Node: Extension Sample Inplace1080597
+Node: Extension Sample Ord1083807
+Node: Extension Sample Readdir1084643
+Ref: table-readdir-file-types1085532
+Node: Extension Sample Revout1086337
+Node: Extension Sample Rev2way1086926
+Node: Extension Sample Read write array1087666
+Node: Extension Sample Readfile1089608
+Node: Extension Sample Time1090703
+Node: Extension Sample API Tests1092051
+Node: gawkextlib1092543
+Node: Extension summary1094990
+Node: Extension Exercises1098692
+Node: Language History1100190
+Node: V7/SVR3.11101846
+Node: SVR41103998
+Node: POSIX1105432
+Node: BTL1106811
+Node: POSIX/GNU1107540
+Node: Feature History1113318
+Node: Common Extensions1127629
+Node: Ranges and Locales1128912
+Ref: Ranges and Locales-Footnote-11133528
+Ref: Ranges and Locales-Footnote-21133555
+Ref: Ranges and Locales-Footnote-31133790
+Node: Contributors1134011
+Node: History summary1139571
+Node: Installation1140951
+Node: Gawk Distribution1141895
+Node: Getting1142379
+Node: Extracting1143340
+Node: Distribution contents1144978
+Node: Unix Installation1151320
+Node: Quick Installation1152002
+Node: Shell Startup Files1154416
+Node: Additional Configuration Options1155505
+Node: Configuration Philosophy1157494
+Node: Non-Unix Installation1159863
+Node: PC Installation1160323
+Node: PC Binary Installation1161161
+Node: PC Compiling1161596
+Node: PC Using1162713
+Node: Cygwin1165758
+Node: MSYS1166528
+Node: VMS Installation1167029
+Node: VMS Compilation1167820
+Ref: VMS Compilation-Footnote-11169049
+Node: VMS Dynamic Extensions1169107
+Node: VMS Installation Details1170792
+Node: VMS Running1173045
+Node: VMS GNV1177324
+Node: VMS Old Gawk1178059
+Node: Bugs1178530
+Node: Bug address1179193
+Node: Usenet1181590
+Node: Maintainers1182367
+Node: Other Versions1183743
+Node: Installation summary1190327
+Node: Notes1191362
+Node: Compatibility Mode1192227
+Node: Additions1193009
+Node: Accessing The Source1193934
+Node: Adding Code1195369
+Node: New Ports1201587
+Node: Derived Files1206075
+Ref: Derived Files-Footnote-11211560
+Ref: Derived Files-Footnote-21211595
+Ref: Derived Files-Footnote-31212193
+Node: Future Extensions1212307
+Node: Implementation Limitations1212965
+Node: Extension Design1214148
+Node: Old Extension Problems1215302
+Ref: Old Extension Problems-Footnote-11216820
+Node: Extension New Mechanism Goals1216877
+Ref: Extension New Mechanism Goals-Footnote-11220241
+Node: Extension Other Design Decisions1220430
+Node: Extension Future Growth1222543
+Node: Old Extension Mechanism1223379
+Node: Notes summary1225142
+Node: Basic Concepts1226324
+Node: Basic High Level1227005
+Ref: figure-general-flow1227287
+Ref: figure-process-flow1227972
+Ref: Basic High Level-Footnote-11231273
+Node: Basic Data Typing1231458
+Node: Glossary1234786
+Node: Copying1266733
+Node: GNU Free Documentation License1304272
+Node: Index1329390

End Tag Table