diff options
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 1288 |
1 files changed, 669 insertions, 619 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index 87f7901c..f5f417a6 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -551,6 +551,7 @@ in (a) below. A copy of the license is included in the section entitled * Inexact representation:: Numbers are not exactly represented. * Comparing FP Values:: How to compare floating point values. * Errors accumulate:: Errors get bigger as they go. +* Strange values:: A few words about infinities and NaNs. * Getting Accuracy:: Getting more accuracy takes some work. * Try To Round:: Add digits and round. * Setting precision:: How to set the precision. @@ -3219,7 +3220,9 @@ change. The variables are: 'AWK_HASH' If this variable exists with a value of 'gst', 'gawk' switches to using the hash function from GNU Smalltalk for managing arrays. - This function may be marginally faster than the standard function. + With a value of 'fnv1a', 'gawk' uses the FNV1-A hash function + (http://www.isthe.com/chongo/tech/comp/fnv/index.html). These + functions may be marginally faster than the standard function. 'AWKREADFUNC' If this variable exists, 'gawk' switches to reading source files @@ -6970,8 +6973,8 @@ width. Here is a list of the format-control letters: On systems supporting IEEE 754 floating-point format, values representing negative infinity are formatted as '-inf' or '-infinity', and positive infinity as 'inf' or 'infinity'. The - special "not a number" value formats as '-nan' or 'nan' (*note Math - Definitions::). + special "not a number" value formats as '-nan' or 'nan' (*note + Strange values::). '%F' Like '%f', but the infinity and "not a number" values are spelled @@ -12863,7 +12866,7 @@ brackets ([ ]): 'log(X)' Return the natural logarithm of X, if X is positive; otherwise, - return 'NaN' ("not a number") on IEEE 754 systems. Additionally, + return NaN ("not a number") on IEEE 754 systems. Additionally, 'gawk' prints a warning message when 'x' is negative. 'rand()' @@ -24246,18 +24249,10 @@ material here: another number and infinity produce infinity. "NaN" - "Not a number."(1) A special value that results from attempting a - calculation that has no answer as a real number. In such a case, - programs can either receive a floating-point exception, or get - 'NaN' back as the result. The IEEE 754 standard recommends that - systems return 'NaN'. Some examples: - - 'sqrt(-1)' - This makes sense in the range of complex numbers, but not in - the range of real numbers, so the result is 'NaN'. - - 'log(-8)' - -8 is out of the domain of 'log()', so the result is 'NaN'. + "Not a number." A special value that results from attempting a + calculation that has no answer as a real number. *Note Strange + values::, for more information about infinity and not-a-number + values. "Normalized" How the significand (see later in this list) is usually stored. @@ -24316,11 +24311,6 @@ Table 16.3: Basic IEEE format values NOTE: The precision numbers include the implied leading one that gives them one extra bit of significand. - ---------- Footnotes ---------- - - (1) Thanks to Michael Brennan for this description, which we have -paraphrased, and for the examples. - File: gawk.info, Node: MPFR features, Next: FP Math Caution, Prev: Math Definitions, Up: Arbitrary Precision Arithmetic @@ -24413,6 +24403,7 @@ be sure of the number of significant decimal places in the final result. * Inexact representation:: Numbers are not exactly represented. * Comparing FP Values:: How to compare floating point values. * Errors accumulate:: Errors get bigger as they go. +* Strange values:: A few words about infinities and NaNs. File: gawk.info, Node: Inexact representation, Next: Comparing FP Values, Up: Inexactness of computations @@ -24477,7 +24468,7 @@ values with a delta, you should be sure to use 'difference < abs(delta)' in case someone passes in a negative delta value. -File: gawk.info, Node: Errors accumulate, Prev: Comparing FP Values, Up: Inexactness of computations +File: gawk.info, Node: Errors accumulate, Next: Strange values, Prev: Comparing FP Values, Up: Inexactness of computations 16.4.1.3 Errors Accumulate .......................... @@ -24525,6 +24516,64 @@ representations yield an unexpected result: -| 4 +File: gawk.info, Node: Strange values, Prev: Errors accumulate, Up: Inexactness of computations + +16.4.1.4 Floating Point Values They Didn't Talk About In School +............................................................... + +Both IEEE 754 floating-point hardware, and MPFR, support two kinds of +values that you probably didn't learn about in school. The first is +"infinity", a special value, that can be either negative or positive, +and which is either smaller than any other value (negative infinity), or +larger than any other value (positive infinity). When such values are +generated, 'gawk' prints them as either '-inf' or '+inf', respectively. +It accepts those strings as data input and converts them to the proper +floating-point values internally. + + Infinity values of the same sign compare as equal to each other. +Otherwise, operations (addition, subtraction, etc.) involving another +number and infinity produce mathematically reasonable results. + + The second kind of value is "not a number", or NaN for short.(1) +This is a special value that results from attempting a calculation that +has no answer as a real number. In such a case, programs can either +receive a floating-point exception, or get NaN back as the result. The +IEEE 754 standard recommends that systems return NaN. Some examples: + +'sqrt(-1)' + This makes sense in the range of complex numbers, but not in the + range of real numbers, so the result is NaN. + +'log(-8)' + -8 is out of the domain of 'log()', so the result is NaN. + + NaN values are strange. In particular, they cannot be compared with +other floating point values; any such comparison, except for "is not +equal to", returns false. NaN values are so much unequal to other +values that even comparing two identical NaN values with '!=' returns +true! + + NaN values can also be signed, although it depends upon the +implementation as to which sign you get for any operation that returns a +NaN. For example, on some systems, 'sqrt(-1)' returns a negative NaN. On +others, it returns a positive NaN. + + When such values are generated, 'gawk' prints them as either '-nan' +or '+nan', respectively. Here too, 'gawk' accepts those strings as data +input and converts them to the proper floating-point values internally. + + If you want to dive more deeply into this topic, you can find test +programs in C, 'awk' and Python in the directory +'awklib/eg/test-programs' in the 'gawk' distribution. These programs +enable comparison among programming languages as to how they handle NaN +and infinity values. + + ---------- Footnotes ---------- + + (1) Thanks to Michael Brennan for this description, which we have +paraphrased, and for the examples. + + File: gawk.info, Node: Getting Accuracy, Next: Try To Round, Prev: Inexactness of computations, Up: FP Math Caution 16.4.2 Getting the Accuracy You Need @@ -38067,603 +38116,604 @@ Index Tag Table: Node: Top1200 -Node: Foreword344780 -Node: Foreword449222 -Node: Preface50754 -Ref: Preface-Footnote-153613 -Ref: Preface-Footnote-253722 -Ref: Preface-Footnote-353956 -Node: History54098 -Node: Names56450 -Ref: Names-Footnote-157554 -Node: This Manual57701 -Ref: This Manual-Footnote-164340 -Node: Conventions64440 -Node: Manual History66809 -Ref: Manual History-Footnote-169806 -Ref: Manual History-Footnote-269847 -Node: How To Contribute69921 -Node: Acknowledgments70847 -Node: Getting Started75784 -Node: Running gawk78223 -Node: One-shot79413 -Node: Read Terminal80676 -Node: Long82669 -Node: Executable Scripts84182 -Ref: Executable Scripts-Footnote-186815 -Node: Comments86918 -Node: Quoting89402 -Node: DOS Quoting94928 -Node: Sample Data Files96984 -Node: Very Simple99579 -Node: Two Rules105681 -Node: More Complex107566 -Node: Statements/Lines109898 -Ref: Statements/Lines-Footnote-1114382 -Node: Other Features114647 -Node: When115583 -Ref: When-Footnote-1117337 -Node: Intro Summary117402 -Node: Invoking Gawk118286 -Node: Command Line119800 -Node: Options120598 -Ref: Options-Footnote-1138512 -Ref: Options-Footnote-2138743 -Node: Other Arguments138768 -Node: Naming Standard Input142779 -Node: Environment Variables143989 -Node: AWKPATH Variable144547 -Ref: AWKPATH Variable-Footnote-1147959 -Ref: AWKPATH Variable-Footnote-2147993 -Node: AWKLIBPATH Variable148364 -Ref: AWKLIBPATH Variable-Footnote-1150061 -Node: Other Environment Variables150436 -Node: Exit Status154257 -Node: Include Files154934 -Node: Loading Shared Libraries158624 -Node: Obsolete160052 -Node: Undocumented160744 -Node: Invoking Summary161041 -Node: Regexp163882 -Node: Regexp Usage165336 -Node: Escape Sequences167373 -Node: Regexp Operators173614 -Node: Regexp Operator Details174099 -Ref: Regexp Operator Details-Footnote-1181463 -Node: Interval Expressions181610 -Ref: Interval Expressions-Footnote-1183031 -Node: Bracket Expressions183129 -Ref: table-char-classes185605 -Node: Leftmost Longest188931 -Node: Computed Regexps190234 -Node: GNU Regexp Operators193661 -Node: Case-sensitivity197398 -Ref: Case-sensitivity-Footnote-1200264 -Ref: Case-sensitivity-Footnote-2200499 -Node: Regexp Summary200607 -Node: Reading Files202073 -Node: Records204342 -Node: awk split records205417 -Node: gawk split records210117 -Ref: gawk split records-Footnote-1215191 -Node: Fields215228 -Node: Nonconstant Fields217969 -Ref: Nonconstant Fields-Footnote-1220205 -Node: Changing Fields220409 -Node: Field Separators226440 -Node: Default Field Splitting229138 -Node: Regexp Field Splitting230256 -Node: Single Character Fields233933 -Node: Command Line Field Separator234993 -Node: Full Line Fields238211 -Ref: Full Line Fields-Footnote-1239733 -Ref: Full Line Fields-Footnote-2239779 -Node: Field Splitting Summary239880 -Node: Constant Size241954 -Node: Fixed width data242686 -Node: Skipping intervening246153 -Node: Allowing trailing data246951 -Node: Fields with fixed data247988 -Node: Splitting By Content249506 -Ref: Splitting By Content-Footnote-1253289 -Node: More CSV253452 -Node: Testing field creation255044 -Node: Multiple Line256669 -Node: Getline262946 -Node: Plain Getline265415 -Node: Getline/Variable267988 -Node: Getline/File269139 -Node: Getline/Variable/File270527 -Ref: Getline/Variable/File-Footnote-1272132 -Node: Getline/Pipe272220 -Node: Getline/Variable/Pipe274924 -Node: Getline/Coprocess276059 -Node: Getline/Variable/Coprocess277326 -Node: Getline Notes278068 -Node: Getline Summary280865 -Ref: table-getline-variants281289 -Node: Read Timeout282037 -Ref: Read Timeout-Footnote-1285943 -Node: Retrying Input286001 -Node: Command-line directories287200 -Node: Input Summary288106 -Node: Input Exercises291278 -Node: Printing291712 -Node: Print293546 -Node: Print Examples295003 -Node: Output Separators297783 -Node: OFMT299800 -Node: Printf301156 -Node: Basic Printf301941 -Node: Control Letters303515 -Node: Format Modifiers308679 -Node: Printf Examples314694 -Node: Redirection317180 -Node: Special FD324021 -Ref: Special FD-Footnote-1327189 -Node: Special Files327263 -Node: Other Inherited Files327880 -Node: Special Network328881 -Node: Special Caveats329741 -Node: Close Files And Pipes330690 -Ref: table-close-pipe-return-values337597 -Ref: Close Files And Pipes-Footnote-1338410 -Ref: Close Files And Pipes-Footnote-2338558 -Node: Nonfatal338710 -Node: Output Summary341048 -Node: Output Exercises342270 -Node: Expressions342949 -Node: Values344137 -Node: Constants344815 -Node: Scalar Constants345506 -Ref: Scalar Constants-Footnote-1348016 -Node: Nondecimal-numbers348266 -Node: Regexp Constants351267 -Node: Using Constant Regexps351793 -Node: Standard Regexp Constants352415 -Node: Strong Regexp Constants355603 -Node: Variables358615 -Node: Using Variables359272 -Node: Assignment Options361182 -Node: Conversion363653 -Node: Strings And Numbers364177 -Ref: Strings And Numbers-Footnote-1367240 -Node: Locale influences conversions367349 -Ref: table-locale-affects370107 -Node: All Operators370725 -Node: Arithmetic Ops371354 -Node: Concatenation374070 -Ref: Concatenation-Footnote-1376917 -Node: Assignment Ops377024 -Ref: table-assign-ops382015 -Node: Increment Ops383328 -Node: Truth Values and Conditions386788 -Node: Truth Values387862 -Node: Typing and Comparison388910 -Node: Variable Typing389730 -Ref: Variable Typing-Footnote-1396193 -Ref: Variable Typing-Footnote-2396265 -Node: Comparison Operators396342 -Ref: table-relational-ops396761 -Node: POSIX String Comparison400256 -Ref: POSIX String Comparison-Footnote-1401951 -Ref: POSIX String Comparison-Footnote-2402090 -Node: Boolean Ops402174 -Ref: Boolean Ops-Footnote-1406656 -Node: Conditional Exp406748 -Node: Function Calls408484 -Node: Precedence412361 -Node: Locales416020 -Node: Expressions Summary417652 -Node: Patterns and Actions420225 -Node: Pattern Overview421345 -Node: Regexp Patterns423022 -Node: Expression Patterns423564 -Node: Ranges427345 -Node: BEGIN/END430453 -Node: Using BEGIN/END431214 -Ref: Using BEGIN/END-Footnote-1433968 -Node: I/O And BEGIN/END434074 -Node: BEGINFILE/ENDFILE436387 -Node: Empty439618 -Node: Using Shell Variables439935 -Node: Action Overview442209 -Node: Statements444534 -Node: If Statement446382 -Node: While Statement447877 -Node: Do Statement449905 -Node: For Statement451053 -Node: Switch Statement454224 -Node: Break Statement456665 -Node: Continue Statement458757 -Node: Next Statement460584 -Node: Nextfile Statement462967 -Node: Exit Statement465656 -Node: Built-in Variables468059 -Node: User-modified469192 -Node: Auto-set476959 -Ref: Auto-set-Footnote-1493766 -Ref: Auto-set-Footnote-2493972 -Node: ARGC and ARGV494028 -Node: Pattern Action Summary498241 -Node: Arrays500671 -Node: Array Basics502000 -Node: Array Intro502844 -Ref: figure-array-elements504819 -Ref: Array Intro-Footnote-1507523 -Node: Reference to Elements507651 -Node: Assigning Elements510115 -Node: Array Example510606 -Node: Scanning an Array512365 -Node: Controlling Scanning515387 -Ref: Controlling Scanning-Footnote-1521843 -Node: Numeric Array Subscripts522159 -Node: Uninitialized Subscripts524343 -Node: Delete525962 -Ref: Delete-Footnote-1528714 -Node: Multidimensional528771 -Node: Multiscanning531866 -Node: Arrays of Arrays533457 -Node: Arrays Summary538225 -Node: Functions540318 -Node: Built-in541356 -Node: Calling Built-in542437 -Node: Numeric Functions544433 -Ref: Numeric Functions-Footnote-1548461 -Ref: Numeric Functions-Footnote-2549109 -Ref: Numeric Functions-Footnote-3549157 -Node: String Functions549429 -Ref: String Functions-Footnote-1573570 -Ref: String Functions-Footnote-2573698 -Ref: String Functions-Footnote-3573946 -Node: Gory Details574033 -Ref: table-sub-escapes575824 -Ref: table-sub-proposed577343 -Ref: table-posix-sub578706 -Ref: table-gensub-escapes580247 -Ref: Gory Details-Footnote-1581070 -Node: I/O Functions581224 -Ref: table-system-return-values587678 -Ref: I/O Functions-Footnote-1589758 -Ref: I/O Functions-Footnote-2589906 -Node: Time Functions590026 -Ref: Time Functions-Footnote-1600697 -Ref: Time Functions-Footnote-2600765 -Ref: Time Functions-Footnote-3600923 -Ref: Time Functions-Footnote-4601034 -Ref: Time Functions-Footnote-5601146 -Ref: Time Functions-Footnote-6601373 -Node: Bitwise Functions601639 -Ref: table-bitwise-ops602233 -Ref: Bitwise Functions-Footnote-1608296 -Ref: Bitwise Functions-Footnote-2608469 -Node: Type Functions608660 -Node: I18N Functions611523 -Node: User-defined613174 -Node: Definition Syntax613986 -Ref: Definition Syntax-Footnote-1619680 -Node: Function Example619751 -Ref: Function Example-Footnote-1622673 -Node: Function Calling622695 -Node: Calling A Function623283 -Node: Variable Scope624241 -Node: Pass By Value/Reference627235 -Node: Function Caveats629879 -Ref: Function Caveats-Footnote-1631926 -Node: Return Statement632046 -Node: Dynamic Typing635025 -Node: Indirect Calls635955 -Ref: Indirect Calls-Footnote-1646207 -Node: Functions Summary646335 -Node: Library Functions649040 -Ref: Library Functions-Footnote-1652647 -Ref: Library Functions-Footnote-2652790 -Node: Library Names652961 -Ref: Library Names-Footnote-1656628 -Ref: Library Names-Footnote-2656851 -Node: General Functions656937 -Node: Strtonum Function658040 -Node: Assert Function661062 -Node: Round Function664388 -Node: Cliff Random Function665928 -Node: Ordinal Functions666944 -Ref: Ordinal Functions-Footnote-1670007 -Ref: Ordinal Functions-Footnote-2670259 -Node: Join Function670469 -Ref: Join Function-Footnote-1672239 -Node: Getlocaltime Function672439 -Node: Readfile Function676181 -Node: Shell Quoting678158 -Node: Data File Management679559 -Node: Filetrans Function680191 -Node: Rewind Function684287 -Node: File Checking686196 -Ref: File Checking-Footnote-1687530 -Node: Empty Files687731 -Node: Ignoring Assigns689710 -Node: Getopt Function691260 -Ref: Getopt Function-Footnote-1706471 -Node: Passwd Functions706671 -Ref: Passwd Functions-Footnote-1715510 -Node: Group Functions715598 -Ref: Group Functions-Footnote-1723496 -Node: Walking Arrays723703 -Node: Library Functions Summary726711 -Node: Library Exercises728117 -Node: Sample Programs728582 -Node: Running Examples729352 -Node: Clones730080 -Node: Cut Program731304 -Node: Egrep Program741444 -Node: Id Program750445 -Node: Split Program760392 -Ref: Split Program-Footnote-1770282 -Node: Tee Program770455 -Node: Uniq Program773245 -Node: Wc Program780833 -Node: Bytes vs. Characters781220 -Node: Using extensions782768 -Node: wc program783522 -Node: Miscellaneous Programs788387 -Node: Dupword Program789600 -Node: Alarm Program791630 -Node: Translate Program796485 -Ref: Translate Program-Footnote-1801050 -Node: Labels Program801320 -Ref: Labels Program-Footnote-1804671 -Node: Word Sorting804755 -Node: History Sorting808827 -Node: Extract Program811052 -Node: Simple Sed819106 -Node: Igawk Program822180 -Ref: Igawk Program-Footnote-1836511 -Ref: Igawk Program-Footnote-2836713 -Ref: Igawk Program-Footnote-3836835 -Node: Anagram Program836950 -Node: Signature Program840012 -Node: Programs Summary841259 -Node: Programs Exercises842473 -Ref: Programs Exercises-Footnote-1846603 -Node: Advanced Features846689 -Node: Nondecimal Data848756 -Node: Array Sorting850347 -Node: Controlling Array Traversal851047 -Ref: Controlling Array Traversal-Footnote-1859415 -Node: Array Sorting Functions859533 -Ref: Array Sorting Functions-Footnote-1864624 -Node: Two-way I/O864820 -Ref: Two-way I/O-Footnote-1872541 -Ref: Two-way I/O-Footnote-2872728 -Node: TCP/IP Networking872810 -Node: Profiling875928 -Node: Extension Philosophy885237 -Node: Advanced Features Summary886716 -Node: Internationalization888731 -Node: I18N and L10N890211 -Node: Explaining gettext890898 -Ref: Explaining gettext-Footnote-1896790 -Ref: Explaining gettext-Footnote-2896975 -Node: Programmer i18n897140 -Ref: Programmer i18n-Footnote-1902089 -Node: Translator i18n902138 -Node: String Extraction902932 -Ref: String Extraction-Footnote-1904064 -Node: Printf Ordering904150 -Ref: Printf Ordering-Footnote-1906936 -Node: I18N Portability907000 -Ref: I18N Portability-Footnote-1909456 -Node: I18N Example909519 -Ref: I18N Example-Footnote-1912794 -Ref: I18N Example-Footnote-2912867 -Node: Gawk I18N912976 -Node: I18N Summary913625 -Node: Debugger914966 -Node: Debugging915966 -Node: Debugging Concepts916407 -Node: Debugging Terms918216 -Node: Awk Debugging920791 -Ref: Awk Debugging-Footnote-1921736 -Node: Sample Debugging Session921868 -Node: Debugger Invocation922402 -Node: Finding The Bug923788 -Node: List of Debugger Commands930262 -Node: Breakpoint Control931595 -Node: Debugger Execution Control935289 -Node: Viewing And Changing Data938651 -Node: Execution Stack942192 -Node: Debugger Info943829 -Node: Miscellaneous Debugger Commands947900 -Node: Readline Support952962 -Node: Limitations953858 -Node: Debugging Summary956412 -Node: Namespaces957691 -Node: Global Namespace958802 -Node: Qualified Names960200 -Node: Default Namespace961199 -Node: Changing The Namespace961940 -Node: Naming Rules963554 -Node: Internal Name Management965402 -Node: Namespace Example966444 -Node: Namespace And Features969006 -Node: Namespace Summary970441 -Node: Arbitrary Precision Arithmetic971918 -Node: Computer Arithmetic973405 -Ref: table-numeric-ranges977171 -Ref: table-floating-point-ranges977664 -Ref: Computer Arithmetic-Footnote-1978322 -Node: Math Definitions978379 -Ref: table-ieee-formats981695 -Ref: Math Definitions-Footnote-1982298 -Node: MPFR features982403 -Node: FP Math Caution984121 -Ref: FP Math Caution-Footnote-1985193 -Node: Inexactness of computations985562 -Node: Inexact representation986522 -Node: Comparing FP Values987882 -Node: Errors accumulate989123 -Node: Getting Accuracy990556 -Node: Try To Round993266 -Node: Setting precision994165 -Ref: table-predefined-precision-strings994862 -Node: Setting the rounding mode996692 -Ref: table-gawk-rounding-modes997066 -Ref: Setting the rounding mode-Footnote-11000997 -Node: Arbitrary Precision Integers1001176 -Ref: Arbitrary Precision Integers-Footnote-11004351 -Node: Checking for MPFR1004500 -Node: POSIX Floating Point Problems1005974 -Ref: POSIX Floating Point Problems-Footnote-11010259 -Node: Floating point summary1010297 -Node: Dynamic Extensions1012487 -Node: Extension Intro1014040 -Node: Plugin License1015306 -Node: Extension Mechanism Outline1016103 -Ref: figure-load-extension1016542 -Ref: figure-register-new-function1018107 -Ref: figure-call-new-function1019199 -Node: Extension API Description1021261 -Node: Extension API Functions Introduction1022974 -Ref: table-api-std-headers1024810 -Node: General Data Types1029059 -Ref: General Data Types-Footnote-11037689 -Node: Memory Allocation Functions1037988 -Ref: Memory Allocation Functions-Footnote-11042489 -Node: Constructor Functions1042588 -Node: API Ownership of MPFR and GMP Values1046054 -Node: Registration Functions1047367 -Node: Extension Functions1048067 -Node: Exit Callback Functions1053389 -Node: Extension Version String1054639 -Node: Input Parsers1055302 -Node: Output Wrappers1068023 -Node: Two-way processors1072535 -Node: Printing Messages1074800 -Ref: Printing Messages-Footnote-11075971 -Node: Updating ERRNO1076124 -Node: Requesting Values1076863 -Ref: table-value-types-returned1077600 -Node: Accessing Parameters1078536 -Node: Symbol Table Access1079773 -Node: Symbol table by name1080285 -Ref: Symbol table by name-Footnote-11083309 -Node: Symbol table by cookie1083437 -Ref: Symbol table by cookie-Footnote-11087622 -Node: Cached values1087686 -Ref: Cached values-Footnote-11091222 -Node: Array Manipulation1091375 -Ref: Array Manipulation-Footnote-11092466 -Node: Array Data Types1092503 -Ref: Array Data Types-Footnote-11095161 -Node: Array Functions1095253 -Node: Flattening Arrays1099751 -Node: Creating Arrays1106727 -Node: Redirection API1111494 -Node: Extension API Variables1114327 -Node: Extension Versioning1115038 -Ref: gawk-api-version1115467 -Node: Extension GMP/MPFR Versioning1117198 -Node: Extension API Informational Variables1118826 -Node: Extension API Boilerplate1119899 -Node: Changes from API V11123873 -Node: Finding Extensions1125445 -Node: Extension Example1126004 -Node: Internal File Description1126802 -Node: Internal File Ops1130882 -Ref: Internal File Ops-Footnote-11142232 -Node: Using Internal File Ops1142372 -Ref: Using Internal File Ops-Footnote-11144755 -Node: Extension Samples1145029 -Node: Extension Sample File Functions1146558 -Node: Extension Sample Fnmatch1154207 -Node: Extension Sample Fork1155694 -Node: Extension Sample Inplace1156912 -Node: Extension Sample Ord1160538 -Node: Extension Sample Readdir1161374 -Ref: table-readdir-file-types1162263 -Node: Extension Sample Revout1163330 -Node: Extension Sample Rev2way1163919 -Node: Extension Sample Read write array1164659 -Node: Extension Sample Readfile1166601 -Node: Extension Sample Time1167696 -Node: Extension Sample API Tests1169448 -Node: gawkextlib1169940 -Node: Extension summary1172858 -Node: Extension Exercises1176560 -Node: Language History1177802 -Node: V7/SVR3.11179458 -Node: SVR41181610 -Node: POSIX1183044 -Node: BTL1184425 -Node: POSIX/GNU1185154 -Node: Feature History1190932 -Node: Common Extensions1207251 -Node: Ranges and Locales1208534 -Ref: Ranges and Locales-Footnote-11213150 -Ref: Ranges and Locales-Footnote-21213177 -Ref: Ranges and Locales-Footnote-31213412 -Node: Contributors1213635 -Node: History summary1219632 -Node: Installation1221012 -Node: Gawk Distribution1221956 -Node: Getting1222440 -Node: Extracting1223403 -Node: Distribution contents1225041 -Node: Unix Installation1231521 -Node: Quick Installation1232203 -Node: Shell Startup Files1234617 -Node: Additional Configuration Options1235706 -Node: Configuration Philosophy1238021 -Node: Non-Unix Installation1240390 -Node: PC Installation1240850 -Node: PC Binary Installation1241688 -Node: PC Compiling1242123 -Node: PC Using1243240 -Node: Cygwin1246793 -Node: MSYS1248017 -Node: VMS Installation1248619 -Node: VMS Compilation1249410 -Ref: VMS Compilation-Footnote-11250639 -Node: VMS Dynamic Extensions1250697 -Node: VMS Installation Details1252382 -Node: VMS Running1254635 -Node: VMS GNV1258914 -Node: VMS Old Gawk1259649 -Node: Bugs1260120 -Node: Bug address1260783 -Node: Usenet1263765 -Node: Maintainers1264769 -Node: Other Versions1265954 -Node: Installation summary1273819 -Node: Notes1275028 -Node: Compatibility Mode1275822 -Node: Additions1276604 -Node: Accessing The Source1277529 -Node: Adding Code1278966 -Node: New Ports1285185 -Node: Derived Files1289560 -Ref: Derived Files-Footnote-11295220 -Ref: Derived Files-Footnote-21295255 -Ref: Derived Files-Footnote-31295853 -Node: Future Extensions1295967 -Node: Implementation Limitations1296625 -Node: Extension Design1297835 -Node: Old Extension Problems1298979 -Ref: Old Extension Problems-Footnote-11300497 -Node: Extension New Mechanism Goals1300554 -Ref: Extension New Mechanism Goals-Footnote-11303918 -Node: Extension Other Design Decisions1304107 -Node: Extension Future Growth1306220 -Node: Notes summary1306826 -Node: Basic Concepts1307984 -Node: Basic High Level1308665 -Ref: figure-general-flow1308947 -Ref: figure-process-flow1309632 -Ref: Basic High Level-Footnote-11312933 -Node: Basic Data Typing1313118 -Node: Glossary1316446 -Node: Copying1348331 -Node: GNU Free Documentation License1385874 -Node: Index1410994 +Node: Foreword344859 +Node: Foreword449301 +Node: Preface50833 +Ref: Preface-Footnote-153692 +Ref: Preface-Footnote-253801 +Ref: Preface-Footnote-354035 +Node: History54177 +Node: Names56529 +Ref: Names-Footnote-157633 +Node: This Manual57780 +Ref: This Manual-Footnote-164419 +Node: Conventions64519 +Node: Manual History66888 +Ref: Manual History-Footnote-169885 +Ref: Manual History-Footnote-269926 +Node: How To Contribute70000 +Node: Acknowledgments70926 +Node: Getting Started75863 +Node: Running gawk78302 +Node: One-shot79492 +Node: Read Terminal80755 +Node: Long82748 +Node: Executable Scripts84261 +Ref: Executable Scripts-Footnote-186894 +Node: Comments86997 +Node: Quoting89481 +Node: DOS Quoting95007 +Node: Sample Data Files97063 +Node: Very Simple99658 +Node: Two Rules105760 +Node: More Complex107645 +Node: Statements/Lines109977 +Ref: Statements/Lines-Footnote-1114461 +Node: Other Features114726 +Node: When115662 +Ref: When-Footnote-1117416 +Node: Intro Summary117481 +Node: Invoking Gawk118365 +Node: Command Line119879 +Node: Options120677 +Ref: Options-Footnote-1138591 +Ref: Options-Footnote-2138822 +Node: Other Arguments138847 +Node: Naming Standard Input142858 +Node: Environment Variables144068 +Node: AWKPATH Variable144626 +Ref: AWKPATH Variable-Footnote-1148038 +Ref: AWKPATH Variable-Footnote-2148072 +Node: AWKLIBPATH Variable148443 +Ref: AWKLIBPATH Variable-Footnote-1150140 +Node: Other Environment Variables150515 +Node: Exit Status154467 +Node: Include Files155144 +Node: Loading Shared Libraries158834 +Node: Obsolete160262 +Node: Undocumented160954 +Node: Invoking Summary161251 +Node: Regexp164092 +Node: Regexp Usage165546 +Node: Escape Sequences167583 +Node: Regexp Operators173824 +Node: Regexp Operator Details174309 +Ref: Regexp Operator Details-Footnote-1181673 +Node: Interval Expressions181820 +Ref: Interval Expressions-Footnote-1183241 +Node: Bracket Expressions183339 +Ref: table-char-classes185815 +Node: Leftmost Longest189141 +Node: Computed Regexps190444 +Node: GNU Regexp Operators193871 +Node: Case-sensitivity197608 +Ref: Case-sensitivity-Footnote-1200474 +Ref: Case-sensitivity-Footnote-2200709 +Node: Regexp Summary200817 +Node: Reading Files202283 +Node: Records204552 +Node: awk split records205627 +Node: gawk split records210327 +Ref: gawk split records-Footnote-1215401 +Node: Fields215438 +Node: Nonconstant Fields218179 +Ref: Nonconstant Fields-Footnote-1220415 +Node: Changing Fields220619 +Node: Field Separators226650 +Node: Default Field Splitting229348 +Node: Regexp Field Splitting230466 +Node: Single Character Fields234143 +Node: Command Line Field Separator235203 +Node: Full Line Fields238421 +Ref: Full Line Fields-Footnote-1239943 +Ref: Full Line Fields-Footnote-2239989 +Node: Field Splitting Summary240090 +Node: Constant Size242164 +Node: Fixed width data242896 +Node: Skipping intervening246363 +Node: Allowing trailing data247161 +Node: Fields with fixed data248198 +Node: Splitting By Content249716 +Ref: Splitting By Content-Footnote-1253499 +Node: More CSV253662 +Node: Testing field creation255254 +Node: Multiple Line256879 +Node: Getline263156 +Node: Plain Getline265625 +Node: Getline/Variable268198 +Node: Getline/File269349 +Node: Getline/Variable/File270737 +Ref: Getline/Variable/File-Footnote-1272342 +Node: Getline/Pipe272430 +Node: Getline/Variable/Pipe275134 +Node: Getline/Coprocess276269 +Node: Getline/Variable/Coprocess277536 +Node: Getline Notes278278 +Node: Getline Summary281075 +Ref: table-getline-variants281499 +Node: Read Timeout282247 +Ref: Read Timeout-Footnote-1286153 +Node: Retrying Input286211 +Node: Command-line directories287410 +Node: Input Summary288316 +Node: Input Exercises291488 +Node: Printing291922 +Node: Print293756 +Node: Print Examples295213 +Node: Output Separators297993 +Node: OFMT300010 +Node: Printf301366 +Node: Basic Printf302151 +Node: Control Letters303725 +Node: Format Modifiers308887 +Node: Printf Examples314902 +Node: Redirection317388 +Node: Special FD324229 +Ref: Special FD-Footnote-1327397 +Node: Special Files327471 +Node: Other Inherited Files328088 +Node: Special Network329089 +Node: Special Caveats329949 +Node: Close Files And Pipes330898 +Ref: table-close-pipe-return-values337805 +Ref: Close Files And Pipes-Footnote-1338618 +Ref: Close Files And Pipes-Footnote-2338766 +Node: Nonfatal338918 +Node: Output Summary341256 +Node: Output Exercises342478 +Node: Expressions343157 +Node: Values344345 +Node: Constants345023 +Node: Scalar Constants345714 +Ref: Scalar Constants-Footnote-1348224 +Node: Nondecimal-numbers348474 +Node: Regexp Constants351475 +Node: Using Constant Regexps352001 +Node: Standard Regexp Constants352623 +Node: Strong Regexp Constants355811 +Node: Variables358823 +Node: Using Variables359480 +Node: Assignment Options361390 +Node: Conversion363861 +Node: Strings And Numbers364385 +Ref: Strings And Numbers-Footnote-1367448 +Node: Locale influences conversions367557 +Ref: table-locale-affects370315 +Node: All Operators370933 +Node: Arithmetic Ops371562 +Node: Concatenation374278 +Ref: Concatenation-Footnote-1377125 +Node: Assignment Ops377232 +Ref: table-assign-ops382223 +Node: Increment Ops383536 +Node: Truth Values and Conditions386996 +Node: Truth Values388070 +Node: Typing and Comparison389118 +Node: Variable Typing389938 +Ref: Variable Typing-Footnote-1396401 +Ref: Variable Typing-Footnote-2396473 +Node: Comparison Operators396550 +Ref: table-relational-ops396969 +Node: POSIX String Comparison400464 +Ref: POSIX String Comparison-Footnote-1402159 +Ref: POSIX String Comparison-Footnote-2402298 +Node: Boolean Ops402382 +Ref: Boolean Ops-Footnote-1406864 +Node: Conditional Exp406956 +Node: Function Calls408692 +Node: Precedence412569 +Node: Locales416228 +Node: Expressions Summary417860 +Node: Patterns and Actions420433 +Node: Pattern Overview421553 +Node: Regexp Patterns423230 +Node: Expression Patterns423772 +Node: Ranges427553 +Node: BEGIN/END430661 +Node: Using BEGIN/END431422 +Ref: Using BEGIN/END-Footnote-1434176 +Node: I/O And BEGIN/END434282 +Node: BEGINFILE/ENDFILE436595 +Node: Empty439826 +Node: Using Shell Variables440143 +Node: Action Overview442417 +Node: Statements444742 +Node: If Statement446590 +Node: While Statement448085 +Node: Do Statement450113 +Node: For Statement451261 +Node: Switch Statement454432 +Node: Break Statement456873 +Node: Continue Statement458965 +Node: Next Statement460792 +Node: Nextfile Statement463175 +Node: Exit Statement465864 +Node: Built-in Variables468267 +Node: User-modified469400 +Node: Auto-set477167 +Ref: Auto-set-Footnote-1493974 +Ref: Auto-set-Footnote-2494180 +Node: ARGC and ARGV494236 +Node: Pattern Action Summary498449 +Node: Arrays500879 +Node: Array Basics502208 +Node: Array Intro503052 +Ref: figure-array-elements505027 +Ref: Array Intro-Footnote-1507731 +Node: Reference to Elements507859 +Node: Assigning Elements510323 +Node: Array Example510814 +Node: Scanning an Array512573 +Node: Controlling Scanning515595 +Ref: Controlling Scanning-Footnote-1522051 +Node: Numeric Array Subscripts522367 +Node: Uninitialized Subscripts524551 +Node: Delete526170 +Ref: Delete-Footnote-1528922 +Node: Multidimensional528979 +Node: Multiscanning532074 +Node: Arrays of Arrays533665 +Node: Arrays Summary538433 +Node: Functions540526 +Node: Built-in541564 +Node: Calling Built-in542645 +Node: Numeric Functions544641 +Ref: Numeric Functions-Footnote-1548667 +Ref: Numeric Functions-Footnote-2549315 +Ref: Numeric Functions-Footnote-3549363 +Node: String Functions549635 +Ref: String Functions-Footnote-1573776 +Ref: String Functions-Footnote-2573904 +Ref: String Functions-Footnote-3574152 +Node: Gory Details574239 +Ref: table-sub-escapes576030 +Ref: table-sub-proposed577549 +Ref: table-posix-sub578912 +Ref: table-gensub-escapes580453 +Ref: Gory Details-Footnote-1581276 +Node: I/O Functions581430 +Ref: table-system-return-values587884 +Ref: I/O Functions-Footnote-1589964 +Ref: I/O Functions-Footnote-2590112 +Node: Time Functions590232 +Ref: Time Functions-Footnote-1600903 +Ref: Time Functions-Footnote-2600971 +Ref: Time Functions-Footnote-3601129 +Ref: Time Functions-Footnote-4601240 +Ref: Time Functions-Footnote-5601352 +Ref: Time Functions-Footnote-6601579 +Node: Bitwise Functions601845 +Ref: table-bitwise-ops602439 +Ref: Bitwise Functions-Footnote-1608502 +Ref: Bitwise Functions-Footnote-2608675 +Node: Type Functions608866 +Node: I18N Functions611729 +Node: User-defined613380 +Node: Definition Syntax614192 +Ref: Definition Syntax-Footnote-1619886 +Node: Function Example619957 +Ref: Function Example-Footnote-1622879 +Node: Function Calling622901 +Node: Calling A Function623489 +Node: Variable Scope624447 +Node: Pass By Value/Reference627441 +Node: Function Caveats630085 +Ref: Function Caveats-Footnote-1632132 +Node: Return Statement632252 +Node: Dynamic Typing635231 +Node: Indirect Calls636161 +Ref: Indirect Calls-Footnote-1646413 +Node: Functions Summary646541 +Node: Library Functions649246 +Ref: Library Functions-Footnote-1652853 +Ref: Library Functions-Footnote-2652996 +Node: Library Names653167 +Ref: Library Names-Footnote-1656834 +Ref: Library Names-Footnote-2657057 +Node: General Functions657143 +Node: Strtonum Function658246 +Node: Assert Function661268 +Node: Round Function664594 +Node: Cliff Random Function666134 +Node: Ordinal Functions667150 +Ref: Ordinal Functions-Footnote-1670213 +Ref: Ordinal Functions-Footnote-2670465 +Node: Join Function670675 +Ref: Join Function-Footnote-1672445 +Node: Getlocaltime Function672645 +Node: Readfile Function676387 +Node: Shell Quoting678364 +Node: Data File Management679765 +Node: Filetrans Function680397 +Node: Rewind Function684493 +Node: File Checking686402 +Ref: File Checking-Footnote-1687736 +Node: Empty Files687937 +Node: Ignoring Assigns689916 +Node: Getopt Function691466 +Ref: Getopt Function-Footnote-1706677 +Node: Passwd Functions706877 +Ref: Passwd Functions-Footnote-1715716 +Node: Group Functions715804 +Ref: Group Functions-Footnote-1723702 +Node: Walking Arrays723909 +Node: Library Functions Summary726917 +Node: Library Exercises728323 +Node: Sample Programs728788 +Node: Running Examples729558 +Node: Clones730286 +Node: Cut Program731510 +Node: Egrep Program741650 +Node: Id Program750651 +Node: Split Program760598 +Ref: Split Program-Footnote-1770488 +Node: Tee Program770661 +Node: Uniq Program773451 +Node: Wc Program781039 +Node: Bytes vs. Characters781426 +Node: Using extensions782974 +Node: wc program783728 +Node: Miscellaneous Programs788593 +Node: Dupword Program789806 +Node: Alarm Program791836 +Node: Translate Program796691 +Ref: Translate Program-Footnote-1801256 +Node: Labels Program801526 +Ref: Labels Program-Footnote-1804877 +Node: Word Sorting804961 +Node: History Sorting809033 +Node: Extract Program811258 +Node: Simple Sed819312 +Node: Igawk Program822386 +Ref: Igawk Program-Footnote-1836717 +Ref: Igawk Program-Footnote-2836919 +Ref: Igawk Program-Footnote-3837041 +Node: Anagram Program837156 +Node: Signature Program840218 +Node: Programs Summary841465 +Node: Programs Exercises842679 +Ref: Programs Exercises-Footnote-1846809 +Node: Advanced Features846895 +Node: Nondecimal Data848962 +Node: Array Sorting850553 +Node: Controlling Array Traversal851253 +Ref: Controlling Array Traversal-Footnote-1859621 +Node: Array Sorting Functions859739 +Ref: Array Sorting Functions-Footnote-1864830 +Node: Two-way I/O865026 +Ref: Two-way I/O-Footnote-1872747 +Ref: Two-way I/O-Footnote-2872934 +Node: TCP/IP Networking873016 +Node: Profiling876134 +Node: Extension Philosophy885443 +Node: Advanced Features Summary886922 +Node: Internationalization888937 +Node: I18N and L10N890417 +Node: Explaining gettext891104 +Ref: Explaining gettext-Footnote-1896996 +Ref: Explaining gettext-Footnote-2897181 +Node: Programmer i18n897346 +Ref: Programmer i18n-Footnote-1902295 +Node: Translator i18n902344 +Node: String Extraction903138 +Ref: String Extraction-Footnote-1904270 +Node: Printf Ordering904356 +Ref: Printf Ordering-Footnote-1907142 +Node: I18N Portability907206 +Ref: I18N Portability-Footnote-1909662 +Node: I18N Example909725 +Ref: I18N Example-Footnote-1913000 +Ref: I18N Example-Footnote-2913073 +Node: Gawk I18N913182 +Node: I18N Summary913831 +Node: Debugger915172 +Node: Debugging916172 +Node: Debugging Concepts916613 +Node: Debugging Terms918422 +Node: Awk Debugging920997 +Ref: Awk Debugging-Footnote-1921942 +Node: Sample Debugging Session922074 +Node: Debugger Invocation922608 +Node: Finding The Bug923994 +Node: List of Debugger Commands930468 +Node: Breakpoint Control931801 +Node: Debugger Execution Control935495 +Node: Viewing And Changing Data938857 +Node: Execution Stack942398 +Node: Debugger Info944035 +Node: Miscellaneous Debugger Commands948106 +Node: Readline Support953168 +Node: Limitations954064 +Node: Debugging Summary956618 +Node: Namespaces957897 +Node: Global Namespace959008 +Node: Qualified Names960406 +Node: Default Namespace961405 +Node: Changing The Namespace962146 +Node: Naming Rules963760 +Node: Internal Name Management965608 +Node: Namespace Example966650 +Node: Namespace And Features969212 +Node: Namespace Summary970647 +Node: Arbitrary Precision Arithmetic972124 +Node: Computer Arithmetic973611 +Ref: table-numeric-ranges977377 +Ref: table-floating-point-ranges977870 +Ref: Computer Arithmetic-Footnote-1978528 +Node: Math Definitions978585 +Ref: table-ieee-formats981561 +Node: MPFR features982128 +Node: FP Math Caution983846 +Ref: FP Math Caution-Footnote-1984918 +Node: Inexactness of computations985287 +Node: Inexact representation986318 +Node: Comparing FP Values987678 +Node: Errors accumulate988919 +Node: Strange values990375 +Ref: Strange values-Footnote-1992963 +Node: Getting Accuracy993068 +Node: Try To Round995778 +Node: Setting precision996677 +Ref: table-predefined-precision-strings997374 +Node: Setting the rounding mode999204 +Ref: table-gawk-rounding-modes999578 +Ref: Setting the rounding mode-Footnote-11003509 +Node: Arbitrary Precision Integers1003688 +Ref: Arbitrary Precision Integers-Footnote-11006863 +Node: Checking for MPFR1007012 +Node: POSIX Floating Point Problems1008486 +Ref: POSIX Floating Point Problems-Footnote-11012771 +Node: Floating point summary1012809 +Node: Dynamic Extensions1014999 +Node: Extension Intro1016552 +Node: Plugin License1017818 +Node: Extension Mechanism Outline1018615 +Ref: figure-load-extension1019054 +Ref: figure-register-new-function1020619 +Ref: figure-call-new-function1021711 +Node: Extension API Description1023773 +Node: Extension API Functions Introduction1025486 +Ref: table-api-std-headers1027322 +Node: General Data Types1031571 +Ref: General Data Types-Footnote-11040201 +Node: Memory Allocation Functions1040500 +Ref: Memory Allocation Functions-Footnote-11045001 +Node: Constructor Functions1045100 +Node: API Ownership of MPFR and GMP Values1048566 +Node: Registration Functions1049879 +Node: Extension Functions1050579 +Node: Exit Callback Functions1055901 +Node: Extension Version String1057151 +Node: Input Parsers1057814 +Node: Output Wrappers1070535 +Node: Two-way processors1075047 +Node: Printing Messages1077312 +Ref: Printing Messages-Footnote-11078483 +Node: Updating ERRNO1078636 +Node: Requesting Values1079375 +Ref: table-value-types-returned1080112 +Node: Accessing Parameters1081048 +Node: Symbol Table Access1082285 +Node: Symbol table by name1082797 +Ref: Symbol table by name-Footnote-11085821 +Node: Symbol table by cookie1085949 +Ref: Symbol table by cookie-Footnote-11090134 +Node: Cached values1090198 +Ref: Cached values-Footnote-11093734 +Node: Array Manipulation1093887 +Ref: Array Manipulation-Footnote-11094978 +Node: Array Data Types1095015 +Ref: Array Data Types-Footnote-11097673 +Node: Array Functions1097765 +Node: Flattening Arrays1102263 +Node: Creating Arrays1109239 +Node: Redirection API1114006 +Node: Extension API Variables1116839 +Node: Extension Versioning1117550 +Ref: gawk-api-version1117979 +Node: Extension GMP/MPFR Versioning1119710 +Node: Extension API Informational Variables1121338 +Node: Extension API Boilerplate1122411 +Node: Changes from API V11126385 +Node: Finding Extensions1127957 +Node: Extension Example1128516 +Node: Internal File Description1129314 +Node: Internal File Ops1133394 +Ref: Internal File Ops-Footnote-11144744 +Node: Using Internal File Ops1144884 +Ref: Using Internal File Ops-Footnote-11147267 +Node: Extension Samples1147541 +Node: Extension Sample File Functions1149070 +Node: Extension Sample Fnmatch1156719 +Node: Extension Sample Fork1158206 +Node: Extension Sample Inplace1159424 +Node: Extension Sample Ord1163050 +Node: Extension Sample Readdir1163886 +Ref: table-readdir-file-types1164775 +Node: Extension Sample Revout1165842 +Node: Extension Sample Rev2way1166431 +Node: Extension Sample Read write array1167171 +Node: Extension Sample Readfile1169113 +Node: Extension Sample Time1170208 +Node: Extension Sample API Tests1171960 +Node: gawkextlib1172452 +Node: Extension summary1175370 +Node: Extension Exercises1179072 +Node: Language History1180314 +Node: V7/SVR3.11181970 +Node: SVR41184122 +Node: POSIX1185556 +Node: BTL1186937 +Node: POSIX/GNU1187666 +Node: Feature History1193444 +Node: Common Extensions1209763 +Node: Ranges and Locales1211046 +Ref: Ranges and Locales-Footnote-11215662 +Ref: Ranges and Locales-Footnote-21215689 +Ref: Ranges and Locales-Footnote-31215924 +Node: Contributors1216147 +Node: History summary1222144 +Node: Installation1223524 +Node: Gawk Distribution1224468 +Node: Getting1224952 +Node: Extracting1225915 +Node: Distribution contents1227553 +Node: Unix Installation1234033 +Node: Quick Installation1234715 +Node: Shell Startup Files1237129 +Node: Additional Configuration Options1238218 +Node: Configuration Philosophy1240533 +Node: Non-Unix Installation1242902 +Node: PC Installation1243362 +Node: PC Binary Installation1244200 +Node: PC Compiling1244635 +Node: PC Using1245752 +Node: Cygwin1249305 +Node: MSYS1250529 +Node: VMS Installation1251131 +Node: VMS Compilation1251922 +Ref: VMS Compilation-Footnote-11253151 +Node: VMS Dynamic Extensions1253209 +Node: VMS Installation Details1254894 +Node: VMS Running1257147 +Node: VMS GNV1261426 +Node: VMS Old Gawk1262161 +Node: Bugs1262632 +Node: Bug address1263295 +Node: Usenet1266277 +Node: Maintainers1267281 +Node: Other Versions1268466 +Node: Installation summary1276331 +Node: Notes1277540 +Node: Compatibility Mode1278334 +Node: Additions1279116 +Node: Accessing The Source1280041 +Node: Adding Code1281478 +Node: New Ports1287697 +Node: Derived Files1292072 +Ref: Derived Files-Footnote-11297732 +Ref: Derived Files-Footnote-21297767 +Ref: Derived Files-Footnote-31298365 +Node: Future Extensions1298479 +Node: Implementation Limitations1299137 +Node: Extension Design1300347 +Node: Old Extension Problems1301491 +Ref: Old Extension Problems-Footnote-11303009 +Node: Extension New Mechanism Goals1303066 +Ref: Extension New Mechanism Goals-Footnote-11306430 +Node: Extension Other Design Decisions1306619 +Node: Extension Future Growth1308732 +Node: Notes summary1309338 +Node: Basic Concepts1310496 +Node: Basic High Level1311177 +Ref: figure-general-flow1311459 +Ref: figure-process-flow1312144 +Ref: Basic High Level-Footnote-11315445 +Node: Basic Data Typing1315630 +Node: Glossary1318958 +Node: Copying1350843 +Node: GNU Free Documentation License1388386 +Node: Index1413506 End Tag Table |