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 4f0eef36..76ecc3c5 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -547,6 +547,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. @@ -3215,7 +3216,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 @@ -6966,8 +6969,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 @@ -12859,7 +12862,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()' @@ -24242,18 +24245,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. @@ -24312,11 +24307,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 @@ -24409,6 +24399,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 @@ -24473,7 +24464,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 .......................... @@ -24521,6 +24512,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 @@ -38063,603 +38112,604 @@ Index Tag Table: Node: Top1200 -Node: Foreword344559 -Node: Foreword449001 -Node: Preface50533 -Ref: Preface-Footnote-153392 -Ref: Preface-Footnote-253501 -Ref: Preface-Footnote-353735 -Node: History53877 -Node: Names56229 -Ref: Names-Footnote-157333 -Node: This Manual57480 -Ref: This Manual-Footnote-164119 -Node: Conventions64219 -Node: Manual History66588 -Ref: Manual History-Footnote-169585 -Ref: Manual History-Footnote-269626 -Node: How To Contribute69700 -Node: Acknowledgments70626 -Node: Getting Started75563 -Node: Running gawk78002 -Node: One-shot79192 -Node: Read Terminal80455 -Node: Long82448 -Node: Executable Scripts83961 -Ref: Executable Scripts-Footnote-186594 -Node: Comments86697 -Node: Quoting89181 -Node: DOS Quoting94707 -Node: Sample Data Files96763 -Node: Very Simple99358 -Node: Two Rules105460 -Node: More Complex107345 -Node: Statements/Lines109677 -Ref: Statements/Lines-Footnote-1114161 -Node: Other Features114426 -Node: When115362 -Ref: When-Footnote-1117116 -Node: Intro Summary117181 -Node: Invoking Gawk118065 -Node: Command Line119579 -Node: Options120377 -Ref: Options-Footnote-1138291 -Ref: Options-Footnote-2138522 -Node: Other Arguments138547 -Node: Naming Standard Input142558 -Node: Environment Variables143768 -Node: AWKPATH Variable144326 -Ref: AWKPATH Variable-Footnote-1147738 -Ref: AWKPATH Variable-Footnote-2147772 -Node: AWKLIBPATH Variable148143 -Ref: AWKLIBPATH Variable-Footnote-1149840 -Node: Other Environment Variables150215 -Node: Exit Status154036 -Node: Include Files154713 -Node: Loading Shared Libraries158403 -Node: Obsolete159831 -Node: Undocumented160523 -Node: Invoking Summary160820 -Node: Regexp163661 -Node: Regexp Usage165115 -Node: Escape Sequences167152 -Node: Regexp Operators173393 -Node: Regexp Operator Details173878 -Ref: Regexp Operator Details-Footnote-1181242 -Node: Interval Expressions181389 -Ref: Interval Expressions-Footnote-1182810 -Node: Bracket Expressions182908 -Ref: table-char-classes185384 -Node: Leftmost Longest188710 -Node: Computed Regexps190013 -Node: GNU Regexp Operators193440 -Node: Case-sensitivity197177 -Ref: Case-sensitivity-Footnote-1200043 -Ref: Case-sensitivity-Footnote-2200278 -Node: Regexp Summary200386 -Node: Reading Files201852 -Node: Records204121 -Node: awk split records205196 -Node: gawk split records209896 -Ref: gawk split records-Footnote-1214970 -Node: Fields215007 -Node: Nonconstant Fields217748 -Ref: Nonconstant Fields-Footnote-1219984 -Node: Changing Fields220188 -Node: Field Separators226219 -Node: Default Field Splitting228917 -Node: Regexp Field Splitting230035 -Node: Single Character Fields233712 -Node: Command Line Field Separator234772 -Node: Full Line Fields237990 -Ref: Full Line Fields-Footnote-1239512 -Ref: Full Line Fields-Footnote-2239558 -Node: Field Splitting Summary239659 -Node: Constant Size241733 -Node: Fixed width data242465 -Node: Skipping intervening245932 -Node: Allowing trailing data246730 -Node: Fields with fixed data247767 -Node: Splitting By Content249285 -Ref: Splitting By Content-Footnote-1253068 -Node: More CSV253231 -Node: Testing field creation254823 -Node: Multiple Line256448 -Node: Getline262725 -Node: Plain Getline265194 -Node: Getline/Variable267767 -Node: Getline/File268918 -Node: Getline/Variable/File270306 -Ref: Getline/Variable/File-Footnote-1271911 -Node: Getline/Pipe271999 -Node: Getline/Variable/Pipe274703 -Node: Getline/Coprocess275838 -Node: Getline/Variable/Coprocess277105 -Node: Getline Notes277847 -Node: Getline Summary280644 -Ref: table-getline-variants281068 -Node: Read Timeout281816 -Ref: Read Timeout-Footnote-1285722 -Node: Retrying Input285780 -Node: Command-line directories286979 -Node: Input Summary287885 -Node: Input Exercises291057 -Node: Printing291491 -Node: Print293325 -Node: Print Examples294782 -Node: Output Separators297562 -Node: OFMT299579 -Node: Printf300935 -Node: Basic Printf301720 -Node: Control Letters303294 -Node: Format Modifiers308458 -Node: Printf Examples314473 -Node: Redirection316959 -Node: Special FD323800 -Ref: Special FD-Footnote-1326968 -Node: Special Files327042 -Node: Other Inherited Files327659 -Node: Special Network328660 -Node: Special Caveats329520 -Node: Close Files And Pipes330469 -Ref: table-close-pipe-return-values337376 -Ref: Close Files And Pipes-Footnote-1338189 -Ref: Close Files And Pipes-Footnote-2338337 -Node: Nonfatal338489 -Node: Output Summary340827 -Node: Output Exercises342049 -Node: Expressions342728 -Node: Values343916 -Node: Constants344594 -Node: Scalar Constants345285 -Ref: Scalar Constants-Footnote-1347795 -Node: Nondecimal-numbers348045 -Node: Regexp Constants351046 -Node: Using Constant Regexps351572 -Node: Standard Regexp Constants352194 -Node: Strong Regexp Constants355382 -Node: Variables358394 -Node: Using Variables359051 -Node: Assignment Options360961 -Node: Conversion363432 -Node: Strings And Numbers363956 -Ref: Strings And Numbers-Footnote-1367019 -Node: Locale influences conversions367128 -Ref: table-locale-affects369886 -Node: All Operators370504 -Node: Arithmetic Ops371133 -Node: Concatenation373849 -Ref: Concatenation-Footnote-1376696 -Node: Assignment Ops376803 -Ref: table-assign-ops381794 -Node: Increment Ops383107 -Node: Truth Values and Conditions386567 -Node: Truth Values387641 -Node: Typing and Comparison388689 -Node: Variable Typing389509 -Ref: Variable Typing-Footnote-1395972 -Ref: Variable Typing-Footnote-2396044 -Node: Comparison Operators396121 -Ref: table-relational-ops396540 -Node: POSIX String Comparison400035 -Ref: POSIX String Comparison-Footnote-1401730 -Ref: POSIX String Comparison-Footnote-2401869 -Node: Boolean Ops401953 -Ref: Boolean Ops-Footnote-1406435 -Node: Conditional Exp406527 -Node: Function Calls408263 -Node: Precedence412140 -Node: Locales415799 -Node: Expressions Summary417431 -Node: Patterns and Actions420004 -Node: Pattern Overview421124 -Node: Regexp Patterns422801 -Node: Expression Patterns423343 -Node: Ranges427124 -Node: BEGIN/END430232 -Node: Using BEGIN/END430993 -Ref: Using BEGIN/END-Footnote-1433747 -Node: I/O And BEGIN/END433853 -Node: BEGINFILE/ENDFILE436166 -Node: Empty439397 -Node: Using Shell Variables439714 -Node: Action Overview441988 -Node: Statements444313 -Node: If Statement446161 -Node: While Statement447656 -Node: Do Statement449684 -Node: For Statement450832 -Node: Switch Statement454003 -Node: Break Statement456444 -Node: Continue Statement458536 -Node: Next Statement460363 -Node: Nextfile Statement462746 -Node: Exit Statement465435 -Node: Built-in Variables467838 -Node: User-modified468971 -Node: Auto-set476738 -Ref: Auto-set-Footnote-1493545 -Ref: Auto-set-Footnote-2493751 -Node: ARGC and ARGV493807 -Node: Pattern Action Summary498020 -Node: Arrays500450 -Node: Array Basics501779 -Node: Array Intro502623 -Ref: figure-array-elements504598 -Ref: Array Intro-Footnote-1507302 -Node: Reference to Elements507430 -Node: Assigning Elements509894 -Node: Array Example510385 -Node: Scanning an Array512144 -Node: Controlling Scanning515166 -Ref: Controlling Scanning-Footnote-1521622 -Node: Numeric Array Subscripts521938 -Node: Uninitialized Subscripts524122 -Node: Delete525741 -Ref: Delete-Footnote-1528493 -Node: Multidimensional528550 -Node: Multiscanning531645 -Node: Arrays of Arrays533236 -Node: Arrays Summary538004 -Node: Functions540097 -Node: Built-in541135 -Node: Calling Built-in542216 -Node: Numeric Functions544212 -Ref: Numeric Functions-Footnote-1548240 -Ref: Numeric Functions-Footnote-2548888 -Ref: Numeric Functions-Footnote-3548936 -Node: String Functions549208 -Ref: String Functions-Footnote-1573349 -Ref: String Functions-Footnote-2573477 -Ref: String Functions-Footnote-3573725 -Node: Gory Details573812 -Ref: table-sub-escapes575603 -Ref: table-sub-proposed577122 -Ref: table-posix-sub578485 -Ref: table-gensub-escapes580026 -Ref: Gory Details-Footnote-1580849 -Node: I/O Functions581003 -Ref: table-system-return-values587457 -Ref: I/O Functions-Footnote-1589537 -Ref: I/O Functions-Footnote-2589685 -Node: Time Functions589805 -Ref: Time Functions-Footnote-1600476 -Ref: Time Functions-Footnote-2600544 -Ref: Time Functions-Footnote-3600702 -Ref: Time Functions-Footnote-4600813 -Ref: Time Functions-Footnote-5600925 -Ref: Time Functions-Footnote-6601152 -Node: Bitwise Functions601418 -Ref: table-bitwise-ops602012 -Ref: Bitwise Functions-Footnote-1608075 -Ref: Bitwise Functions-Footnote-2608248 -Node: Type Functions608439 -Node: I18N Functions611302 -Node: User-defined612953 -Node: Definition Syntax613765 -Ref: Definition Syntax-Footnote-1619459 -Node: Function Example619530 -Ref: Function Example-Footnote-1622452 -Node: Function Calling622474 -Node: Calling A Function623062 -Node: Variable Scope624020 -Node: Pass By Value/Reference627014 -Node: Function Caveats629658 -Ref: Function Caveats-Footnote-1631705 -Node: Return Statement631825 -Node: Dynamic Typing634804 -Node: Indirect Calls635734 -Ref: Indirect Calls-Footnote-1645986 -Node: Functions Summary646114 -Node: Library Functions648819 -Ref: Library Functions-Footnote-1652426 -Ref: Library Functions-Footnote-2652569 -Node: Library Names652740 -Ref: Library Names-Footnote-1656407 -Ref: Library Names-Footnote-2656630 -Node: General Functions656716 -Node: Strtonum Function657819 -Node: Assert Function660841 -Node: Round Function664167 -Node: Cliff Random Function665707 -Node: Ordinal Functions666723 -Ref: Ordinal Functions-Footnote-1669786 -Ref: Ordinal Functions-Footnote-2670038 -Node: Join Function670248 -Ref: Join Function-Footnote-1672018 -Node: Getlocaltime Function672218 -Node: Readfile Function675960 -Node: Shell Quoting677937 -Node: Data File Management679338 -Node: Filetrans Function679970 -Node: Rewind Function684066 -Node: File Checking685975 -Ref: File Checking-Footnote-1687309 -Node: Empty Files687510 -Node: Ignoring Assigns689489 -Node: Getopt Function691039 -Ref: Getopt Function-Footnote-1706250 -Node: Passwd Functions706450 -Ref: Passwd Functions-Footnote-1715289 -Node: Group Functions715377 -Ref: Group Functions-Footnote-1723275 -Node: Walking Arrays723482 -Node: Library Functions Summary726490 -Node: Library Exercises727896 -Node: Sample Programs728361 -Node: Running Examples729131 -Node: Clones729859 -Node: Cut Program731083 -Node: Egrep Program741223 -Node: Id Program750224 -Node: Split Program760171 -Ref: Split Program-Footnote-1770061 -Node: Tee Program770234 -Node: Uniq Program773024 -Node: Wc Program780612 -Node: Bytes vs. Characters781009 -Node: Using extensions782557 -Node: wc program783311 -Node: Miscellaneous Programs788176 -Node: Dupword Program789389 -Node: Alarm Program791419 -Node: Translate Program796274 -Ref: Translate Program-Footnote-1800839 -Node: Labels Program801109 -Ref: Labels Program-Footnote-1804460 -Node: Word Sorting804544 -Node: History Sorting808616 -Node: Extract Program810841 -Node: Simple Sed818895 -Node: Igawk Program821969 -Ref: Igawk Program-Footnote-1836300 -Ref: Igawk Program-Footnote-2836502 -Ref: Igawk Program-Footnote-3836624 -Node: Anagram Program836739 -Node: Signature Program839801 -Node: Programs Summary841048 -Node: Programs Exercises842262 -Ref: Programs Exercises-Footnote-1846392 -Node: Advanced Features846478 -Node: Nondecimal Data848545 -Node: Array Sorting850136 -Node: Controlling Array Traversal850836 -Ref: Controlling Array Traversal-Footnote-1859204 -Node: Array Sorting Functions859322 -Ref: Array Sorting Functions-Footnote-1864413 -Node: Two-way I/O864609 -Ref: Two-way I/O-Footnote-1872330 -Ref: Two-way I/O-Footnote-2872517 -Node: TCP/IP Networking872599 -Node: Profiling875717 -Node: Extension Philosophy885026 -Node: Advanced Features Summary886505 -Node: Internationalization888520 -Node: I18N and L10N890000 -Node: Explaining gettext890687 -Ref: Explaining gettext-Footnote-1896579 -Ref: Explaining gettext-Footnote-2896764 -Node: Programmer i18n896929 -Ref: Programmer i18n-Footnote-1901878 -Node: Translator i18n901927 -Node: String Extraction902721 -Ref: String Extraction-Footnote-1903853 -Node: Printf Ordering903939 -Ref: Printf Ordering-Footnote-1906725 -Node: I18N Portability906789 -Ref: I18N Portability-Footnote-1909245 -Node: I18N Example909308 -Ref: I18N Example-Footnote-1912583 -Ref: I18N Example-Footnote-2912656 -Node: Gawk I18N912765 -Node: I18N Summary913414 -Node: Debugger914755 -Node: Debugging915755 -Node: Debugging Concepts916196 -Node: Debugging Terms918005 -Node: Awk Debugging920580 -Ref: Awk Debugging-Footnote-1921525 -Node: Sample Debugging Session921657 -Node: Debugger Invocation922191 -Node: Finding The Bug923577 -Node: List of Debugger Commands930051 -Node: Breakpoint Control931384 -Node: Debugger Execution Control935078 -Node: Viewing And Changing Data938440 -Node: Execution Stack941981 -Node: Debugger Info943618 -Node: Miscellaneous Debugger Commands947689 -Node: Readline Support952751 -Node: Limitations953647 -Node: Debugging Summary956201 -Node: Namespaces957480 -Node: Global Namespace958591 -Node: Qualified Names959989 -Node: Default Namespace960988 -Node: Changing The Namespace961729 -Node: Naming Rules963343 -Node: Internal Name Management965191 -Node: Namespace Example966233 -Node: Namespace And Features968795 -Node: Namespace Summary970230 -Node: Arbitrary Precision Arithmetic971707 -Node: Computer Arithmetic973194 -Ref: table-numeric-ranges976960 -Ref: table-floating-point-ranges977453 -Ref: Computer Arithmetic-Footnote-1978111 -Node: Math Definitions978168 -Ref: table-ieee-formats981484 -Ref: Math Definitions-Footnote-1982087 -Node: MPFR features982192 -Node: FP Math Caution983910 -Ref: FP Math Caution-Footnote-1984982 -Node: Inexactness of computations985351 -Node: Inexact representation986311 -Node: Comparing FP Values987671 -Node: Errors accumulate988912 -Node: Getting Accuracy990345 -Node: Try To Round993055 -Node: Setting precision993954 -Ref: table-predefined-precision-strings994651 -Node: Setting the rounding mode996481 -Ref: table-gawk-rounding-modes996855 -Ref: Setting the rounding mode-Footnote-11000786 -Node: Arbitrary Precision Integers1000965 -Ref: Arbitrary Precision Integers-Footnote-11004140 -Node: Checking for MPFR1004289 -Node: POSIX Floating Point Problems1005763 -Ref: POSIX Floating Point Problems-Footnote-11010048 -Node: Floating point summary1010086 -Node: Dynamic Extensions1012276 -Node: Extension Intro1013829 -Node: Plugin License1015095 -Node: Extension Mechanism Outline1015892 -Ref: figure-load-extension1016331 -Ref: figure-register-new-function1017896 -Ref: figure-call-new-function1018988 -Node: Extension API Description1021050 -Node: Extension API Functions Introduction1022763 -Ref: table-api-std-headers1024599 -Node: General Data Types1028848 -Ref: General Data Types-Footnote-11037478 -Node: Memory Allocation Functions1037777 -Ref: Memory Allocation Functions-Footnote-11042278 -Node: Constructor Functions1042377 -Node: API Ownership of MPFR and GMP Values1045843 -Node: Registration Functions1047156 -Node: Extension Functions1047856 -Node: Exit Callback Functions1053178 -Node: Extension Version String1054428 -Node: Input Parsers1055091 -Node: Output Wrappers1067812 -Node: Two-way processors1072324 -Node: Printing Messages1074589 -Ref: Printing Messages-Footnote-11075760 -Node: Updating ERRNO1075913 -Node: Requesting Values1076652 -Ref: table-value-types-returned1077389 -Node: Accessing Parameters1078325 -Node: Symbol Table Access1079562 -Node: Symbol table by name1080074 -Ref: Symbol table by name-Footnote-11083098 -Node: Symbol table by cookie1083226 -Ref: Symbol table by cookie-Footnote-11087411 -Node: Cached values1087475 -Ref: Cached values-Footnote-11091011 -Node: Array Manipulation1091164 -Ref: Array Manipulation-Footnote-11092255 -Node: Array Data Types1092292 -Ref: Array Data Types-Footnote-11094950 -Node: Array Functions1095042 -Node: Flattening Arrays1099540 -Node: Creating Arrays1106516 -Node: Redirection API1111283 -Node: Extension API Variables1114116 -Node: Extension Versioning1114827 -Ref: gawk-api-version1115256 -Node: Extension GMP/MPFR Versioning1116987 -Node: Extension API Informational Variables1118615 -Node: Extension API Boilerplate1119688 -Node: Changes from API V11123662 -Node: Finding Extensions1125234 -Node: Extension Example1125793 -Node: Internal File Description1126591 -Node: Internal File Ops1130671 -Ref: Internal File Ops-Footnote-11142021 -Node: Using Internal File Ops1142161 -Ref: Using Internal File Ops-Footnote-11144544 -Node: Extension Samples1144818 -Node: Extension Sample File Functions1146347 -Node: Extension Sample Fnmatch1153996 -Node: Extension Sample Fork1155483 -Node: Extension Sample Inplace1156701 -Node: Extension Sample Ord1160327 -Node: Extension Sample Readdir1161163 -Ref: table-readdir-file-types1162052 -Node: Extension Sample Revout1163119 -Node: Extension Sample Rev2way1163708 -Node: Extension Sample Read write array1164448 -Node: Extension Sample Readfile1166390 -Node: Extension Sample Time1167485 -Node: Extension Sample API Tests1169237 -Node: gawkextlib1169729 -Node: Extension summary1172647 -Node: Extension Exercises1176349 -Node: Language History1177591 -Node: V7/SVR3.11179247 -Node: SVR41181399 -Node: POSIX1182833 -Node: BTL1184214 -Node: POSIX/GNU1184943 -Node: Feature History1190721 -Node: Common Extensions1207040 -Node: Ranges and Locales1208323 -Ref: Ranges and Locales-Footnote-11212939 -Ref: Ranges and Locales-Footnote-21212966 -Ref: Ranges and Locales-Footnote-31213201 -Node: Contributors1213424 -Node: History summary1219421 -Node: Installation1220801 -Node: Gawk Distribution1221745 -Node: Getting1222229 -Node: Extracting1223192 -Node: Distribution contents1224830 -Node: Unix Installation1231310 -Node: Quick Installation1231992 -Node: Shell Startup Files1234406 -Node: Additional Configuration Options1235495 -Node: Configuration Philosophy1237810 -Node: Non-Unix Installation1240179 -Node: PC Installation1240639 -Node: PC Binary Installation1241477 -Node: PC Compiling1241912 -Node: PC Using1243029 -Node: Cygwin1246582 -Node: MSYS1247806 -Node: VMS Installation1248408 -Node: VMS Compilation1249199 -Ref: VMS Compilation-Footnote-11250428 -Node: VMS Dynamic Extensions1250486 -Node: VMS Installation Details1252171 -Node: VMS Running1254424 -Node: VMS GNV1258703 -Node: VMS Old Gawk1259438 -Node: Bugs1259909 -Node: Bug address1260572 -Node: Usenet1263554 -Node: Maintainers1264558 -Node: Other Versions1265743 -Node: Installation summary1273608 -Node: Notes1274817 -Node: Compatibility Mode1275611 -Node: Additions1276393 -Node: Accessing The Source1277318 -Node: Adding Code1278755 -Node: New Ports1284974 -Node: Derived Files1289349 -Ref: Derived Files-Footnote-11295009 -Ref: Derived Files-Footnote-21295044 -Ref: Derived Files-Footnote-31295642 -Node: Future Extensions1295756 -Node: Implementation Limitations1296414 -Node: Extension Design1297624 -Node: Old Extension Problems1298768 -Ref: Old Extension Problems-Footnote-11300286 -Node: Extension New Mechanism Goals1300343 -Ref: Extension New Mechanism Goals-Footnote-11303707 -Node: Extension Other Design Decisions1303896 -Node: Extension Future Growth1306009 -Node: Notes summary1306615 -Node: Basic Concepts1307773 -Node: Basic High Level1308454 -Ref: figure-general-flow1308736 -Ref: figure-process-flow1309421 -Ref: Basic High Level-Footnote-11312722 -Node: Basic Data Typing1312907 -Node: Glossary1316235 -Node: Copying1348120 -Node: GNU Free Documentation License1385663 -Node: Index1410783 +Node: Foreword344638 +Node: Foreword449080 +Node: Preface50612 +Ref: Preface-Footnote-153471 +Ref: Preface-Footnote-253580 +Ref: Preface-Footnote-353814 +Node: History53956 +Node: Names56308 +Ref: Names-Footnote-157412 +Node: This Manual57559 +Ref: This Manual-Footnote-164198 +Node: Conventions64298 +Node: Manual History66667 +Ref: Manual History-Footnote-169664 +Ref: Manual History-Footnote-269705 +Node: How To Contribute69779 +Node: Acknowledgments70705 +Node: Getting Started75642 +Node: Running gawk78081 +Node: One-shot79271 +Node: Read Terminal80534 +Node: Long82527 +Node: Executable Scripts84040 +Ref: Executable Scripts-Footnote-186673 +Node: Comments86776 +Node: Quoting89260 +Node: DOS Quoting94786 +Node: Sample Data Files96842 +Node: Very Simple99437 +Node: Two Rules105539 +Node: More Complex107424 +Node: Statements/Lines109756 +Ref: Statements/Lines-Footnote-1114240 +Node: Other Features114505 +Node: When115441 +Ref: When-Footnote-1117195 +Node: Intro Summary117260 +Node: Invoking Gawk118144 +Node: Command Line119658 +Node: Options120456 +Ref: Options-Footnote-1138370 +Ref: Options-Footnote-2138601 +Node: Other Arguments138626 +Node: Naming Standard Input142637 +Node: Environment Variables143847 +Node: AWKPATH Variable144405 +Ref: AWKPATH Variable-Footnote-1147817 +Ref: AWKPATH Variable-Footnote-2147851 +Node: AWKLIBPATH Variable148222 +Ref: AWKLIBPATH Variable-Footnote-1149919 +Node: Other Environment Variables150294 +Node: Exit Status154246 +Node: Include Files154923 +Node: Loading Shared Libraries158613 +Node: Obsolete160041 +Node: Undocumented160733 +Node: Invoking Summary161030 +Node: Regexp163871 +Node: Regexp Usage165325 +Node: Escape Sequences167362 +Node: Regexp Operators173603 +Node: Regexp Operator Details174088 +Ref: Regexp Operator Details-Footnote-1181452 +Node: Interval Expressions181599 +Ref: Interval Expressions-Footnote-1183020 +Node: Bracket Expressions183118 +Ref: table-char-classes185594 +Node: Leftmost Longest188920 +Node: Computed Regexps190223 +Node: GNU Regexp Operators193650 +Node: Case-sensitivity197387 +Ref: Case-sensitivity-Footnote-1200253 +Ref: Case-sensitivity-Footnote-2200488 +Node: Regexp Summary200596 +Node: Reading Files202062 +Node: Records204331 +Node: awk split records205406 +Node: gawk split records210106 +Ref: gawk split records-Footnote-1215180 +Node: Fields215217 +Node: Nonconstant Fields217958 +Ref: Nonconstant Fields-Footnote-1220194 +Node: Changing Fields220398 +Node: Field Separators226429 +Node: Default Field Splitting229127 +Node: Regexp Field Splitting230245 +Node: Single Character Fields233922 +Node: Command Line Field Separator234982 +Node: Full Line Fields238200 +Ref: Full Line Fields-Footnote-1239722 +Ref: Full Line Fields-Footnote-2239768 +Node: Field Splitting Summary239869 +Node: Constant Size241943 +Node: Fixed width data242675 +Node: Skipping intervening246142 +Node: Allowing trailing data246940 +Node: Fields with fixed data247977 +Node: Splitting By Content249495 +Ref: Splitting By Content-Footnote-1253278 +Node: More CSV253441 +Node: Testing field creation255033 +Node: Multiple Line256658 +Node: Getline262935 +Node: Plain Getline265404 +Node: Getline/Variable267977 +Node: Getline/File269128 +Node: Getline/Variable/File270516 +Ref: Getline/Variable/File-Footnote-1272121 +Node: Getline/Pipe272209 +Node: Getline/Variable/Pipe274913 +Node: Getline/Coprocess276048 +Node: Getline/Variable/Coprocess277315 +Node: Getline Notes278057 +Node: Getline Summary280854 +Ref: table-getline-variants281278 +Node: Read Timeout282026 +Ref: Read Timeout-Footnote-1285932 +Node: Retrying Input285990 +Node: Command-line directories287189 +Node: Input Summary288095 +Node: Input Exercises291267 +Node: Printing291701 +Node: Print293535 +Node: Print Examples294992 +Node: Output Separators297772 +Node: OFMT299789 +Node: Printf301145 +Node: Basic Printf301930 +Node: Control Letters303504 +Node: Format Modifiers308666 +Node: Printf Examples314681 +Node: Redirection317167 +Node: Special FD324008 +Ref: Special FD-Footnote-1327176 +Node: Special Files327250 +Node: Other Inherited Files327867 +Node: Special Network328868 +Node: Special Caveats329728 +Node: Close Files And Pipes330677 +Ref: table-close-pipe-return-values337584 +Ref: Close Files And Pipes-Footnote-1338397 +Ref: Close Files And Pipes-Footnote-2338545 +Node: Nonfatal338697 +Node: Output Summary341035 +Node: Output Exercises342257 +Node: Expressions342936 +Node: Values344124 +Node: Constants344802 +Node: Scalar Constants345493 +Ref: Scalar Constants-Footnote-1348003 +Node: Nondecimal-numbers348253 +Node: Regexp Constants351254 +Node: Using Constant Regexps351780 +Node: Standard Regexp Constants352402 +Node: Strong Regexp Constants355590 +Node: Variables358602 +Node: Using Variables359259 +Node: Assignment Options361169 +Node: Conversion363640 +Node: Strings And Numbers364164 +Ref: Strings And Numbers-Footnote-1367227 +Node: Locale influences conversions367336 +Ref: table-locale-affects370094 +Node: All Operators370712 +Node: Arithmetic Ops371341 +Node: Concatenation374057 +Ref: Concatenation-Footnote-1376904 +Node: Assignment Ops377011 +Ref: table-assign-ops382002 +Node: Increment Ops383315 +Node: Truth Values and Conditions386775 +Node: Truth Values387849 +Node: Typing and Comparison388897 +Node: Variable Typing389717 +Ref: Variable Typing-Footnote-1396180 +Ref: Variable Typing-Footnote-2396252 +Node: Comparison Operators396329 +Ref: table-relational-ops396748 +Node: POSIX String Comparison400243 +Ref: POSIX String Comparison-Footnote-1401938 +Ref: POSIX String Comparison-Footnote-2402077 +Node: Boolean Ops402161 +Ref: Boolean Ops-Footnote-1406643 +Node: Conditional Exp406735 +Node: Function Calls408471 +Node: Precedence412348 +Node: Locales416007 +Node: Expressions Summary417639 +Node: Patterns and Actions420212 +Node: Pattern Overview421332 +Node: Regexp Patterns423009 +Node: Expression Patterns423551 +Node: Ranges427332 +Node: BEGIN/END430440 +Node: Using BEGIN/END431201 +Ref: Using BEGIN/END-Footnote-1433955 +Node: I/O And BEGIN/END434061 +Node: BEGINFILE/ENDFILE436374 +Node: Empty439605 +Node: Using Shell Variables439922 +Node: Action Overview442196 +Node: Statements444521 +Node: If Statement446369 +Node: While Statement447864 +Node: Do Statement449892 +Node: For Statement451040 +Node: Switch Statement454211 +Node: Break Statement456652 +Node: Continue Statement458744 +Node: Next Statement460571 +Node: Nextfile Statement462954 +Node: Exit Statement465643 +Node: Built-in Variables468046 +Node: User-modified469179 +Node: Auto-set476946 +Ref: Auto-set-Footnote-1493753 +Ref: Auto-set-Footnote-2493959 +Node: ARGC and ARGV494015 +Node: Pattern Action Summary498228 +Node: Arrays500658 +Node: Array Basics501987 +Node: Array Intro502831 +Ref: figure-array-elements504806 +Ref: Array Intro-Footnote-1507510 +Node: Reference to Elements507638 +Node: Assigning Elements510102 +Node: Array Example510593 +Node: Scanning an Array512352 +Node: Controlling Scanning515374 +Ref: Controlling Scanning-Footnote-1521830 +Node: Numeric Array Subscripts522146 +Node: Uninitialized Subscripts524330 +Node: Delete525949 +Ref: Delete-Footnote-1528701 +Node: Multidimensional528758 +Node: Multiscanning531853 +Node: Arrays of Arrays533444 +Node: Arrays Summary538212 +Node: Functions540305 +Node: Built-in541343 +Node: Calling Built-in542424 +Node: Numeric Functions544420 +Ref: Numeric Functions-Footnote-1548446 +Ref: Numeric Functions-Footnote-2549094 +Ref: Numeric Functions-Footnote-3549142 +Node: String Functions549414 +Ref: String Functions-Footnote-1573555 +Ref: String Functions-Footnote-2573683 +Ref: String Functions-Footnote-3573931 +Node: Gory Details574018 +Ref: table-sub-escapes575809 +Ref: table-sub-proposed577328 +Ref: table-posix-sub578691 +Ref: table-gensub-escapes580232 +Ref: Gory Details-Footnote-1581055 +Node: I/O Functions581209 +Ref: table-system-return-values587663 +Ref: I/O Functions-Footnote-1589743 +Ref: I/O Functions-Footnote-2589891 +Node: Time Functions590011 +Ref: Time Functions-Footnote-1600682 +Ref: Time Functions-Footnote-2600750 +Ref: Time Functions-Footnote-3600908 +Ref: Time Functions-Footnote-4601019 +Ref: Time Functions-Footnote-5601131 +Ref: Time Functions-Footnote-6601358 +Node: Bitwise Functions601624 +Ref: table-bitwise-ops602218 +Ref: Bitwise Functions-Footnote-1608281 +Ref: Bitwise Functions-Footnote-2608454 +Node: Type Functions608645 +Node: I18N Functions611508 +Node: User-defined613159 +Node: Definition Syntax613971 +Ref: Definition Syntax-Footnote-1619665 +Node: Function Example619736 +Ref: Function Example-Footnote-1622658 +Node: Function Calling622680 +Node: Calling A Function623268 +Node: Variable Scope624226 +Node: Pass By Value/Reference627220 +Node: Function Caveats629864 +Ref: Function Caveats-Footnote-1631911 +Node: Return Statement632031 +Node: Dynamic Typing635010 +Node: Indirect Calls635940 +Ref: Indirect Calls-Footnote-1646192 +Node: Functions Summary646320 +Node: Library Functions649025 +Ref: Library Functions-Footnote-1652632 +Ref: Library Functions-Footnote-2652775 +Node: Library Names652946 +Ref: Library Names-Footnote-1656613 +Ref: Library Names-Footnote-2656836 +Node: General Functions656922 +Node: Strtonum Function658025 +Node: Assert Function661047 +Node: Round Function664373 +Node: Cliff Random Function665913 +Node: Ordinal Functions666929 +Ref: Ordinal Functions-Footnote-1669992 +Ref: Ordinal Functions-Footnote-2670244 +Node: Join Function670454 +Ref: Join Function-Footnote-1672224 +Node: Getlocaltime Function672424 +Node: Readfile Function676166 +Node: Shell Quoting678143 +Node: Data File Management679544 +Node: Filetrans Function680176 +Node: Rewind Function684272 +Node: File Checking686181 +Ref: File Checking-Footnote-1687515 +Node: Empty Files687716 +Node: Ignoring Assigns689695 +Node: Getopt Function691245 +Ref: Getopt Function-Footnote-1706456 +Node: Passwd Functions706656 +Ref: Passwd Functions-Footnote-1715495 +Node: Group Functions715583 +Ref: Group Functions-Footnote-1723481 +Node: Walking Arrays723688 +Node: Library Functions Summary726696 +Node: Library Exercises728102 +Node: Sample Programs728567 +Node: Running Examples729337 +Node: Clones730065 +Node: Cut Program731289 +Node: Egrep Program741429 +Node: Id Program750430 +Node: Split Program760377 +Ref: Split Program-Footnote-1770267 +Node: Tee Program770440 +Node: Uniq Program773230 +Node: Wc Program780818 +Node: Bytes vs. Characters781215 +Node: Using extensions782763 +Node: wc program783517 +Node: Miscellaneous Programs788382 +Node: Dupword Program789595 +Node: Alarm Program791625 +Node: Translate Program796480 +Ref: Translate Program-Footnote-1801045 +Node: Labels Program801315 +Ref: Labels Program-Footnote-1804666 +Node: Word Sorting804750 +Node: History Sorting808822 +Node: Extract Program811047 +Node: Simple Sed819101 +Node: Igawk Program822175 +Ref: Igawk Program-Footnote-1836506 +Ref: Igawk Program-Footnote-2836708 +Ref: Igawk Program-Footnote-3836830 +Node: Anagram Program836945 +Node: Signature Program840007 +Node: Programs Summary841254 +Node: Programs Exercises842468 +Ref: Programs Exercises-Footnote-1846598 +Node: Advanced Features846684 +Node: Nondecimal Data848751 +Node: Array Sorting850342 +Node: Controlling Array Traversal851042 +Ref: Controlling Array Traversal-Footnote-1859410 +Node: Array Sorting Functions859528 +Ref: Array Sorting Functions-Footnote-1864619 +Node: Two-way I/O864815 +Ref: Two-way I/O-Footnote-1872536 +Ref: Two-way I/O-Footnote-2872723 +Node: TCP/IP Networking872805 +Node: Profiling875923 +Node: Extension Philosophy885232 +Node: Advanced Features Summary886711 +Node: Internationalization888726 +Node: I18N and L10N890206 +Node: Explaining gettext890893 +Ref: Explaining gettext-Footnote-1896785 +Ref: Explaining gettext-Footnote-2896970 +Node: Programmer i18n897135 +Ref: Programmer i18n-Footnote-1902084 +Node: Translator i18n902133 +Node: String Extraction902927 +Ref: String Extraction-Footnote-1904059 +Node: Printf Ordering904145 +Ref: Printf Ordering-Footnote-1906931 +Node: I18N Portability906995 +Ref: I18N Portability-Footnote-1909451 +Node: I18N Example909514 +Ref: I18N Example-Footnote-1912789 +Ref: I18N Example-Footnote-2912862 +Node: Gawk I18N912971 +Node: I18N Summary913620 +Node: Debugger914961 +Node: Debugging915961 +Node: Debugging Concepts916402 +Node: Debugging Terms918211 +Node: Awk Debugging920786 +Ref: Awk Debugging-Footnote-1921731 +Node: Sample Debugging Session921863 +Node: Debugger Invocation922397 +Node: Finding The Bug923783 +Node: List of Debugger Commands930257 +Node: Breakpoint Control931590 +Node: Debugger Execution Control935284 +Node: Viewing And Changing Data938646 +Node: Execution Stack942187 +Node: Debugger Info943824 +Node: Miscellaneous Debugger Commands947895 +Node: Readline Support952957 +Node: Limitations953853 +Node: Debugging Summary956407 +Node: Namespaces957686 +Node: Global Namespace958797 +Node: Qualified Names960195 +Node: Default Namespace961194 +Node: Changing The Namespace961935 +Node: Naming Rules963549 +Node: Internal Name Management965397 +Node: Namespace Example966439 +Node: Namespace And Features969001 +Node: Namespace Summary970436 +Node: Arbitrary Precision Arithmetic971913 +Node: Computer Arithmetic973400 +Ref: table-numeric-ranges977166 +Ref: table-floating-point-ranges977659 +Ref: Computer Arithmetic-Footnote-1978317 +Node: Math Definitions978374 +Ref: table-ieee-formats981350 +Node: MPFR features981917 +Node: FP Math Caution983635 +Ref: FP Math Caution-Footnote-1984707 +Node: Inexactness of computations985076 +Node: Inexact representation986107 +Node: Comparing FP Values987467 +Node: Errors accumulate988708 +Node: Strange values990164 +Ref: Strange values-Footnote-1992752 +Node: Getting Accuracy992857 +Node: Try To Round995567 +Node: Setting precision996466 +Ref: table-predefined-precision-strings997163 +Node: Setting the rounding mode998993 +Ref: table-gawk-rounding-modes999367 +Ref: Setting the rounding mode-Footnote-11003298 +Node: Arbitrary Precision Integers1003477 +Ref: Arbitrary Precision Integers-Footnote-11006652 +Node: Checking for MPFR1006801 +Node: POSIX Floating Point Problems1008275 +Ref: POSIX Floating Point Problems-Footnote-11012560 +Node: Floating point summary1012598 +Node: Dynamic Extensions1014788 +Node: Extension Intro1016341 +Node: Plugin License1017607 +Node: Extension Mechanism Outline1018404 +Ref: figure-load-extension1018843 +Ref: figure-register-new-function1020408 +Ref: figure-call-new-function1021500 +Node: Extension API Description1023562 +Node: Extension API Functions Introduction1025275 +Ref: table-api-std-headers1027111 +Node: General Data Types1031360 +Ref: General Data Types-Footnote-11039990 +Node: Memory Allocation Functions1040289 +Ref: Memory Allocation Functions-Footnote-11044790 +Node: Constructor Functions1044889 +Node: API Ownership of MPFR and GMP Values1048355 +Node: Registration Functions1049668 +Node: Extension Functions1050368 +Node: Exit Callback Functions1055690 +Node: Extension Version String1056940 +Node: Input Parsers1057603 +Node: Output Wrappers1070324 +Node: Two-way processors1074836 +Node: Printing Messages1077101 +Ref: Printing Messages-Footnote-11078272 +Node: Updating ERRNO1078425 +Node: Requesting Values1079164 +Ref: table-value-types-returned1079901 +Node: Accessing Parameters1080837 +Node: Symbol Table Access1082074 +Node: Symbol table by name1082586 +Ref: Symbol table by name-Footnote-11085610 +Node: Symbol table by cookie1085738 +Ref: Symbol table by cookie-Footnote-11089923 +Node: Cached values1089987 +Ref: Cached values-Footnote-11093523 +Node: Array Manipulation1093676 +Ref: Array Manipulation-Footnote-11094767 +Node: Array Data Types1094804 +Ref: Array Data Types-Footnote-11097462 +Node: Array Functions1097554 +Node: Flattening Arrays1102052 +Node: Creating Arrays1109028 +Node: Redirection API1113795 +Node: Extension API Variables1116628 +Node: Extension Versioning1117339 +Ref: gawk-api-version1117768 +Node: Extension GMP/MPFR Versioning1119499 +Node: Extension API Informational Variables1121127 +Node: Extension API Boilerplate1122200 +Node: Changes from API V11126174 +Node: Finding Extensions1127746 +Node: Extension Example1128305 +Node: Internal File Description1129103 +Node: Internal File Ops1133183 +Ref: Internal File Ops-Footnote-11144533 +Node: Using Internal File Ops1144673 +Ref: Using Internal File Ops-Footnote-11147056 +Node: Extension Samples1147330 +Node: Extension Sample File Functions1148859 +Node: Extension Sample Fnmatch1156508 +Node: Extension Sample Fork1157995 +Node: Extension Sample Inplace1159213 +Node: Extension Sample Ord1162839 +Node: Extension Sample Readdir1163675 +Ref: table-readdir-file-types1164564 +Node: Extension Sample Revout1165631 +Node: Extension Sample Rev2way1166220 +Node: Extension Sample Read write array1166960 +Node: Extension Sample Readfile1168902 +Node: Extension Sample Time1169997 +Node: Extension Sample API Tests1171749 +Node: gawkextlib1172241 +Node: Extension summary1175159 +Node: Extension Exercises1178861 +Node: Language History1180103 +Node: V7/SVR3.11181759 +Node: SVR41183911 +Node: POSIX1185345 +Node: BTL1186726 +Node: POSIX/GNU1187455 +Node: Feature History1193233 +Node: Common Extensions1209552 +Node: Ranges and Locales1210835 +Ref: Ranges and Locales-Footnote-11215451 +Ref: Ranges and Locales-Footnote-21215478 +Ref: Ranges and Locales-Footnote-31215713 +Node: Contributors1215936 +Node: History summary1221933 +Node: Installation1223313 +Node: Gawk Distribution1224257 +Node: Getting1224741 +Node: Extracting1225704 +Node: Distribution contents1227342 +Node: Unix Installation1233822 +Node: Quick Installation1234504 +Node: Shell Startup Files1236918 +Node: Additional Configuration Options1238007 +Node: Configuration Philosophy1240322 +Node: Non-Unix Installation1242691 +Node: PC Installation1243151 +Node: PC Binary Installation1243989 +Node: PC Compiling1244424 +Node: PC Using1245541 +Node: Cygwin1249094 +Node: MSYS1250318 +Node: VMS Installation1250920 +Node: VMS Compilation1251711 +Ref: VMS Compilation-Footnote-11252940 +Node: VMS Dynamic Extensions1252998 +Node: VMS Installation Details1254683 +Node: VMS Running1256936 +Node: VMS GNV1261215 +Node: VMS Old Gawk1261950 +Node: Bugs1262421 +Node: Bug address1263084 +Node: Usenet1266066 +Node: Maintainers1267070 +Node: Other Versions1268255 +Node: Installation summary1276120 +Node: Notes1277329 +Node: Compatibility Mode1278123 +Node: Additions1278905 +Node: Accessing The Source1279830 +Node: Adding Code1281267 +Node: New Ports1287486 +Node: Derived Files1291861 +Ref: Derived Files-Footnote-11297521 +Ref: Derived Files-Footnote-21297556 +Ref: Derived Files-Footnote-31298154 +Node: Future Extensions1298268 +Node: Implementation Limitations1298926 +Node: Extension Design1300136 +Node: Old Extension Problems1301280 +Ref: Old Extension Problems-Footnote-11302798 +Node: Extension New Mechanism Goals1302855 +Ref: Extension New Mechanism Goals-Footnote-11306219 +Node: Extension Other Design Decisions1306408 +Node: Extension Future Growth1308521 +Node: Notes summary1309127 +Node: Basic Concepts1310285 +Node: Basic High Level1310966 +Ref: figure-general-flow1311248 +Ref: figure-process-flow1311933 +Ref: Basic High Level-Footnote-11315234 +Node: Basic Data Typing1315419 +Node: Glossary1318747 +Node: Copying1350632 +Node: GNU Free Documentation License1388175 +Node: Index1413295 End Tag Table |