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 d29e3525..445d06dd 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 @@ -6933,8 +6936,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 @@ -12826,7 +12829,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()' @@ -24209,18 +24212,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. @@ -24279,11 +24274,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 @@ -24376,6 +24366,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 @@ -24440,7 +24431,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 .......................... @@ -24488,6 +24479,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 @@ -38024,603 +38073,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-1180310 -Node: Interval Expressions180457 -Ref: Interval Expressions-Footnote-1181878 -Node: Bracket Expressions181976 -Ref: table-char-classes184452 -Node: Leftmost Longest187778 -Node: Computed Regexps189081 -Node: GNU Regexp Operators192508 -Node: Case-sensitivity196245 -Ref: Case-sensitivity-Footnote-1199111 -Ref: Case-sensitivity-Footnote-2199346 -Node: Regexp Summary199454 -Node: Reading Files200920 -Node: Records203189 -Node: awk split records204264 -Node: gawk split records208964 -Ref: gawk split records-Footnote-1214038 -Node: Fields214075 -Node: Nonconstant Fields216816 -Ref: Nonconstant Fields-Footnote-1219052 -Node: Changing Fields219256 -Node: Field Separators225287 -Node: Default Field Splitting227985 -Node: Regexp Field Splitting229103 -Node: Single Character Fields232780 -Node: Command Line Field Separator233840 -Node: Full Line Fields237058 -Ref: Full Line Fields-Footnote-1238580 -Ref: Full Line Fields-Footnote-2238626 -Node: Field Splitting Summary238727 -Node: Constant Size240801 -Node: Fixed width data241533 -Node: Skipping intervening245000 -Node: Allowing trailing data245798 -Node: Fields with fixed data246835 -Node: Splitting By Content248353 -Ref: Splitting By Content-Footnote-1252136 -Node: More CSV252299 -Node: Testing field creation253891 -Node: Multiple Line255516 -Node: Getline261793 -Node: Plain Getline264262 -Node: Getline/Variable266835 -Node: Getline/File267986 -Node: Getline/Variable/File269374 -Ref: Getline/Variable/File-Footnote-1270979 -Node: Getline/Pipe271067 -Node: Getline/Variable/Pipe273771 -Node: Getline/Coprocess274906 -Node: Getline/Variable/Coprocess276173 -Node: Getline Notes276915 -Node: Getline Summary279712 -Ref: table-getline-variants280136 -Node: Read Timeout280884 -Ref: Read Timeout-Footnote-1284790 -Node: Retrying Input284848 -Node: Command-line directories286047 -Node: Input Summary286953 -Node: Input Exercises290125 -Node: Printing290559 -Node: Print292393 -Node: Print Examples293850 -Node: Output Separators296630 -Node: OFMT298647 -Node: Printf300003 -Node: Basic Printf300788 -Node: Control Letters302362 -Node: Format Modifiers307526 -Node: Printf Examples313541 -Node: Redirection316027 -Node: Special FD322868 -Ref: Special FD-Footnote-1326036 -Node: Special Files326110 -Node: Other Inherited Files326727 -Node: Special Network327728 -Node: Special Caveats328588 -Node: Close Files And Pipes329537 -Ref: table-close-pipe-return-values336444 -Ref: Close Files And Pipes-Footnote-1337257 -Ref: Close Files And Pipes-Footnote-2337405 -Node: Nonfatal337557 -Node: Output Summary339895 -Node: Output Exercises341117 -Node: Expressions341796 -Node: Values342984 -Node: Constants343662 -Node: Scalar Constants344353 -Ref: Scalar Constants-Footnote-1346863 -Node: Nondecimal-numbers347113 -Node: Regexp Constants350114 -Node: Using Constant Regexps350640 -Node: Standard Regexp Constants351262 -Node: Strong Regexp Constants354450 -Node: Variables357462 -Node: Using Variables358119 -Node: Assignment Options360029 -Node: Conversion362500 -Node: Strings And Numbers363024 -Ref: Strings And Numbers-Footnote-1366087 -Node: Locale influences conversions366196 -Ref: table-locale-affects368954 -Node: All Operators369572 -Node: Arithmetic Ops370201 -Node: Concatenation372917 -Ref: Concatenation-Footnote-1375764 -Node: Assignment Ops375871 -Ref: table-assign-ops380862 -Node: Increment Ops382175 -Node: Truth Values and Conditions385635 -Node: Truth Values386709 -Node: Typing and Comparison387757 -Node: Variable Typing388577 -Ref: Variable Typing-Footnote-1395040 -Ref: Variable Typing-Footnote-2395112 -Node: Comparison Operators395189 -Ref: table-relational-ops395608 -Node: POSIX String Comparison399103 -Ref: POSIX String Comparison-Footnote-1400798 -Ref: POSIX String Comparison-Footnote-2400937 -Node: Boolean Ops401021 -Ref: Boolean Ops-Footnote-1405503 -Node: Conditional Exp405595 -Node: Function Calls407331 -Node: Precedence411208 -Node: Locales414867 -Node: Expressions Summary416499 -Node: Patterns and Actions419072 -Node: Pattern Overview420192 -Node: Regexp Patterns421869 -Node: Expression Patterns422411 -Node: Ranges426192 -Node: BEGIN/END429300 -Node: Using BEGIN/END430061 -Ref: Using BEGIN/END-Footnote-1432815 -Node: I/O And BEGIN/END432921 -Node: BEGINFILE/ENDFILE435234 -Node: Empty438465 -Node: Using Shell Variables438782 -Node: Action Overview441056 -Node: Statements443381 -Node: If Statement445229 -Node: While Statement446724 -Node: Do Statement448752 -Node: For Statement449900 -Node: Switch Statement453071 -Node: Break Statement455512 -Node: Continue Statement457604 -Node: Next Statement459431 -Node: Nextfile Statement461814 -Node: Exit Statement464503 -Node: Built-in Variables466906 -Node: User-modified468039 -Node: Auto-set475806 -Ref: Auto-set-Footnote-1492613 -Ref: Auto-set-Footnote-2492819 -Node: ARGC and ARGV492875 -Node: Pattern Action Summary497088 -Node: Arrays499518 -Node: Array Basics500847 -Node: Array Intro501691 -Ref: figure-array-elements503666 -Ref: Array Intro-Footnote-1506370 -Node: Reference to Elements506498 -Node: Assigning Elements508962 -Node: Array Example509453 -Node: Scanning an Array511212 -Node: Controlling Scanning514234 -Ref: Controlling Scanning-Footnote-1520690 -Node: Numeric Array Subscripts521006 -Node: Uninitialized Subscripts523190 -Node: Delete524809 -Ref: Delete-Footnote-1527561 -Node: Multidimensional527618 -Node: Multiscanning530713 -Node: Arrays of Arrays532304 -Node: Arrays Summary537072 -Node: Functions539165 -Node: Built-in540203 -Node: Calling Built-in541284 -Node: Numeric Functions543280 -Ref: Numeric Functions-Footnote-1547308 -Ref: Numeric Functions-Footnote-2547956 -Ref: Numeric Functions-Footnote-3548004 -Node: String Functions548276 -Ref: String Functions-Footnote-1572417 -Ref: String Functions-Footnote-2572545 -Ref: String Functions-Footnote-3572793 -Node: Gory Details572880 -Ref: table-sub-escapes574671 -Ref: table-sub-proposed576190 -Ref: table-posix-sub577553 -Ref: table-gensub-escapes579094 -Ref: Gory Details-Footnote-1579917 -Node: I/O Functions580071 -Ref: table-system-return-values586525 -Ref: I/O Functions-Footnote-1588605 -Ref: I/O Functions-Footnote-2588753 -Node: Time Functions588873 -Ref: Time Functions-Footnote-1599544 -Ref: Time Functions-Footnote-2599612 -Ref: Time Functions-Footnote-3599770 -Ref: Time Functions-Footnote-4599881 -Ref: Time Functions-Footnote-5599993 -Ref: Time Functions-Footnote-6600220 -Node: Bitwise Functions600486 -Ref: table-bitwise-ops601080 -Ref: Bitwise Functions-Footnote-1607143 -Ref: Bitwise Functions-Footnote-2607316 -Node: Type Functions607507 -Node: I18N Functions610370 -Node: User-defined612021 -Node: Definition Syntax612833 -Ref: Definition Syntax-Footnote-1618527 -Node: Function Example618598 -Ref: Function Example-Footnote-1621520 -Node: Function Calling621542 -Node: Calling A Function622130 -Node: Variable Scope623088 -Node: Pass By Value/Reference626082 -Node: Function Caveats628726 -Ref: Function Caveats-Footnote-1630773 -Node: Return Statement630893 -Node: Dynamic Typing633872 -Node: Indirect Calls634802 -Ref: Indirect Calls-Footnote-1645054 -Node: Functions Summary645182 -Node: Library Functions647887 -Ref: Library Functions-Footnote-1651494 -Ref: Library Functions-Footnote-2651637 -Node: Library Names651808 -Ref: Library Names-Footnote-1655475 -Ref: Library Names-Footnote-2655698 -Node: General Functions655784 -Node: Strtonum Function656887 -Node: Assert Function659909 -Node: Round Function663235 -Node: Cliff Random Function664775 -Node: Ordinal Functions665791 -Ref: Ordinal Functions-Footnote-1668854 -Ref: Ordinal Functions-Footnote-2669106 -Node: Join Function669316 -Ref: Join Function-Footnote-1671086 -Node: Getlocaltime Function671286 -Node: Readfile Function675028 -Node: Shell Quoting677005 -Node: Data File Management678406 -Node: Filetrans Function679038 -Node: Rewind Function683134 -Node: File Checking685043 -Ref: File Checking-Footnote-1686377 -Node: Empty Files686578 -Node: Ignoring Assigns688557 -Node: Getopt Function690107 -Ref: Getopt Function-Footnote-1705318 -Node: Passwd Functions705518 -Ref: Passwd Functions-Footnote-1714357 -Node: Group Functions714445 -Ref: Group Functions-Footnote-1722343 -Node: Walking Arrays722550 -Node: Library Functions Summary725558 -Node: Library Exercises726964 -Node: Sample Programs727429 -Node: Running Examples728199 -Node: Clones728927 -Node: Cut Program730151 -Node: Egrep Program740291 -Node: Id Program749292 -Node: Split Program759239 -Ref: Split Program-Footnote-1769129 -Node: Tee Program769302 -Node: Uniq Program772092 -Node: Wc Program779680 -Node: Bytes vs. Characters780077 -Node: Using extensions781625 -Node: wc program782379 -Node: Miscellaneous Programs787244 -Node: Dupword Program788457 -Node: Alarm Program790487 -Node: Translate Program795342 -Ref: Translate Program-Footnote-1799907 -Node: Labels Program800177 -Ref: Labels Program-Footnote-1803528 -Node: Word Sorting803612 -Node: History Sorting807684 -Node: Extract Program809909 -Node: Simple Sed817963 -Node: Igawk Program821037 -Ref: Igawk Program-Footnote-1835368 -Ref: Igawk Program-Footnote-2835570 -Ref: Igawk Program-Footnote-3835692 -Node: Anagram Program835807 -Node: Signature Program838869 -Node: Programs Summary840116 -Node: Programs Exercises841330 -Ref: Programs Exercises-Footnote-1845460 -Node: Advanced Features845546 -Node: Nondecimal Data847613 -Node: Array Sorting849204 -Node: Controlling Array Traversal849904 -Ref: Controlling Array Traversal-Footnote-1858272 -Node: Array Sorting Functions858390 -Ref: Array Sorting Functions-Footnote-1863481 -Node: Two-way I/O863677 -Ref: Two-way I/O-Footnote-1871398 -Ref: Two-way I/O-Footnote-2871585 -Node: TCP/IP Networking871667 -Node: Profiling874785 -Node: Extension Philosophy884094 -Node: Advanced Features Summary885573 -Node: Internationalization887588 -Node: I18N and L10N889068 -Node: Explaining gettext889755 -Ref: Explaining gettext-Footnote-1895647 -Ref: Explaining gettext-Footnote-2895832 -Node: Programmer i18n895997 -Ref: Programmer i18n-Footnote-1900946 -Node: Translator i18n900995 -Node: String Extraction901789 -Ref: String Extraction-Footnote-1902921 -Node: Printf Ordering903007 -Ref: Printf Ordering-Footnote-1905793 -Node: I18N Portability905857 -Ref: I18N Portability-Footnote-1908313 -Node: I18N Example908376 -Ref: I18N Example-Footnote-1911651 -Ref: I18N Example-Footnote-2911724 -Node: Gawk I18N911833 -Node: I18N Summary912482 -Node: Debugger913823 -Node: Debugging914823 -Node: Debugging Concepts915264 -Node: Debugging Terms917073 -Node: Awk Debugging919648 -Ref: Awk Debugging-Footnote-1920593 -Node: Sample Debugging Session920725 -Node: Debugger Invocation921259 -Node: Finding The Bug922645 -Node: List of Debugger Commands929119 -Node: Breakpoint Control930452 -Node: Debugger Execution Control934146 -Node: Viewing And Changing Data937508 -Node: Execution Stack941049 -Node: Debugger Info942686 -Node: Miscellaneous Debugger Commands946757 -Node: Readline Support951819 -Node: Limitations952715 -Node: Debugging Summary955269 -Node: Namespaces956548 -Node: Global Namespace957659 -Node: Qualified Names959057 -Node: Default Namespace960056 -Node: Changing The Namespace960797 -Node: Naming Rules962411 -Node: Internal Name Management964259 -Node: Namespace Example965301 -Node: Namespace And Features967863 -Node: Namespace Summary969298 -Node: Arbitrary Precision Arithmetic970775 -Node: Computer Arithmetic972262 -Ref: table-numeric-ranges976028 -Ref: table-floating-point-ranges976521 -Ref: Computer Arithmetic-Footnote-1977179 -Node: Math Definitions977236 -Ref: table-ieee-formats980552 -Ref: Math Definitions-Footnote-1981155 -Node: MPFR features981260 -Node: FP Math Caution982978 -Ref: FP Math Caution-Footnote-1984050 -Node: Inexactness of computations984419 -Node: Inexact representation985379 -Node: Comparing FP Values986739 -Node: Errors accumulate987980 -Node: Getting Accuracy989413 -Node: Try To Round992123 -Node: Setting precision993022 -Ref: table-predefined-precision-strings993719 -Node: Setting the rounding mode995549 -Ref: table-gawk-rounding-modes995923 -Ref: Setting the rounding mode-Footnote-1999854 -Node: Arbitrary Precision Integers1000033 -Ref: Arbitrary Precision Integers-Footnote-11003208 -Node: Checking for MPFR1003357 -Node: POSIX Floating Point Problems1004831 -Ref: POSIX Floating Point Problems-Footnote-11009116 -Node: Floating point summary1009154 -Node: Dynamic Extensions1011344 -Node: Extension Intro1012897 -Node: Plugin License1014163 -Node: Extension Mechanism Outline1014960 -Ref: figure-load-extension1015399 -Ref: figure-register-new-function1016964 -Ref: figure-call-new-function1018056 -Node: Extension API Description1020118 -Node: Extension API Functions Introduction1021831 -Ref: table-api-std-headers1023667 -Node: General Data Types1027916 -Ref: General Data Types-Footnote-11036546 -Node: Memory Allocation Functions1036845 -Ref: Memory Allocation Functions-Footnote-11041346 -Node: Constructor Functions1041445 -Node: API Ownership of MPFR and GMP Values1044911 -Node: Registration Functions1046224 -Node: Extension Functions1046924 -Node: Exit Callback Functions1052246 -Node: Extension Version String1053496 -Node: Input Parsers1054159 -Node: Output Wrappers1066880 -Node: Two-way processors1071392 -Node: Printing Messages1073657 -Ref: Printing Messages-Footnote-11074828 -Node: Updating ERRNO1074981 -Node: Requesting Values1075720 -Ref: table-value-types-returned1076457 -Node: Accessing Parameters1077393 -Node: Symbol Table Access1078630 -Node: Symbol table by name1079142 -Ref: Symbol table by name-Footnote-11082166 -Node: Symbol table by cookie1082294 -Ref: Symbol table by cookie-Footnote-11086479 -Node: Cached values1086543 -Ref: Cached values-Footnote-11090079 -Node: Array Manipulation1090232 -Ref: Array Manipulation-Footnote-11091323 -Node: Array Data Types1091360 -Ref: Array Data Types-Footnote-11094018 -Node: Array Functions1094110 -Node: Flattening Arrays1098608 -Node: Creating Arrays1105584 -Node: Redirection API1110351 -Node: Extension API Variables1113184 -Node: Extension Versioning1113895 -Ref: gawk-api-version1114324 -Node: Extension GMP/MPFR Versioning1116055 -Node: Extension API Informational Variables1117683 -Node: Extension API Boilerplate1118756 -Node: Changes from API V11122730 -Node: Finding Extensions1124302 -Node: Extension Example1124861 -Node: Internal File Description1125659 -Node: Internal File Ops1129739 -Ref: Internal File Ops-Footnote-11141089 -Node: Using Internal File Ops1141229 -Ref: Using Internal File Ops-Footnote-11143612 -Node: Extension Samples1143886 -Node: Extension Sample File Functions1145415 -Node: Extension Sample Fnmatch1153064 -Node: Extension Sample Fork1154551 -Node: Extension Sample Inplace1155769 -Node: Extension Sample Ord1159395 -Node: Extension Sample Readdir1160231 -Ref: table-readdir-file-types1161120 -Node: Extension Sample Revout1162187 -Node: Extension Sample Rev2way1162776 -Node: Extension Sample Read write array1163516 -Node: Extension Sample Readfile1165458 -Node: Extension Sample Time1166553 -Node: Extension Sample API Tests1168305 -Node: gawkextlib1168797 -Node: Extension summary1171715 -Node: Extension Exercises1175417 -Node: Language History1176659 -Node: V7/SVR3.11178315 -Node: SVR41180467 -Node: POSIX1181901 -Node: BTL1183282 -Node: POSIX/GNU1184011 -Node: Feature History1189789 -Node: Common Extensions1206108 -Node: Ranges and Locales1207391 -Ref: Ranges and Locales-Footnote-11212007 -Ref: Ranges and Locales-Footnote-21212034 -Ref: Ranges and Locales-Footnote-31212269 -Node: Contributors1212492 -Node: History summary1218489 -Node: Installation1219869 -Node: Gawk Distribution1220813 -Node: Getting1221297 -Node: Extracting1222260 -Node: Distribution contents1223898 -Node: Unix Installation1230378 -Node: Quick Installation1231060 -Node: Shell Startup Files1233474 -Node: Additional Configuration Options1234563 -Node: Configuration Philosophy1236878 -Node: Non-Unix Installation1239247 -Node: PC Installation1239707 -Node: PC Binary Installation1240545 -Node: PC Compiling1240980 -Node: PC Using1242097 -Node: Cygwin1245650 -Node: MSYS1246874 -Node: VMS Installation1247476 -Node: VMS Compilation1248267 -Ref: VMS Compilation-Footnote-11249496 -Node: VMS Dynamic Extensions1249554 -Node: VMS Installation Details1251239 -Node: VMS Running1253492 -Node: VMS GNV1257771 -Node: VMS Old Gawk1258506 -Node: Bugs1258977 -Node: Bug address1259640 -Node: Usenet1262622 -Node: Maintainers1263626 -Node: Other Versions1264811 -Node: Installation summary1272676 -Node: Notes1273885 -Node: Compatibility Mode1274679 -Node: Additions1275461 -Node: Accessing The Source1276386 -Node: Adding Code1277823 -Node: New Ports1284042 -Node: Derived Files1288417 -Ref: Derived Files-Footnote-11294077 -Ref: Derived Files-Footnote-21294112 -Ref: Derived Files-Footnote-31294710 -Node: Future Extensions1294824 -Node: Implementation Limitations1295482 -Node: Extension Design1296692 -Node: Old Extension Problems1297836 -Ref: Old Extension Problems-Footnote-11299354 -Node: Extension New Mechanism Goals1299411 -Ref: Extension New Mechanism Goals-Footnote-11302775 -Node: Extension Other Design Decisions1302964 -Node: Extension Future Growth1305077 -Node: Notes summary1305683 -Node: Basic Concepts1306841 -Node: Basic High Level1307522 -Ref: figure-general-flow1307804 -Ref: figure-process-flow1308489 -Ref: Basic High Level-Footnote-11311790 -Node: Basic Data Typing1311975 -Node: Glossary1315303 -Node: Copying1347188 -Node: GNU Free Documentation License1384731 -Node: Index1409851 +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-1180520 +Node: Interval Expressions180667 +Ref: Interval Expressions-Footnote-1182088 +Node: Bracket Expressions182186 +Ref: table-char-classes184662 +Node: Leftmost Longest187988 +Node: Computed Regexps189291 +Node: GNU Regexp Operators192718 +Node: Case-sensitivity196455 +Ref: Case-sensitivity-Footnote-1199321 +Ref: Case-sensitivity-Footnote-2199556 +Node: Regexp Summary199664 +Node: Reading Files201130 +Node: Records203399 +Node: awk split records204474 +Node: gawk split records209174 +Ref: gawk split records-Footnote-1214248 +Node: Fields214285 +Node: Nonconstant Fields217026 +Ref: Nonconstant Fields-Footnote-1219262 +Node: Changing Fields219466 +Node: Field Separators225497 +Node: Default Field Splitting228195 +Node: Regexp Field Splitting229313 +Node: Single Character Fields232990 +Node: Command Line Field Separator234050 +Node: Full Line Fields237268 +Ref: Full Line Fields-Footnote-1238790 +Ref: Full Line Fields-Footnote-2238836 +Node: Field Splitting Summary238937 +Node: Constant Size241011 +Node: Fixed width data241743 +Node: Skipping intervening245210 +Node: Allowing trailing data246008 +Node: Fields with fixed data247045 +Node: Splitting By Content248563 +Ref: Splitting By Content-Footnote-1252346 +Node: More CSV252509 +Node: Testing field creation254101 +Node: Multiple Line255726 +Node: Getline262003 +Node: Plain Getline264472 +Node: Getline/Variable267045 +Node: Getline/File268196 +Node: Getline/Variable/File269584 +Ref: Getline/Variable/File-Footnote-1271189 +Node: Getline/Pipe271277 +Node: Getline/Variable/Pipe273981 +Node: Getline/Coprocess275116 +Node: Getline/Variable/Coprocess276383 +Node: Getline Notes277125 +Node: Getline Summary279922 +Ref: table-getline-variants280346 +Node: Read Timeout281094 +Ref: Read Timeout-Footnote-1285000 +Node: Retrying Input285058 +Node: Command-line directories286257 +Node: Input Summary287163 +Node: Input Exercises290335 +Node: Printing290769 +Node: Print292603 +Node: Print Examples294060 +Node: Output Separators296840 +Node: OFMT298857 +Node: Printf300213 +Node: Basic Printf300998 +Node: Control Letters302572 +Node: Format Modifiers307734 +Node: Printf Examples313749 +Node: Redirection316235 +Node: Special FD323076 +Ref: Special FD-Footnote-1326244 +Node: Special Files326318 +Node: Other Inherited Files326935 +Node: Special Network327936 +Node: Special Caveats328796 +Node: Close Files And Pipes329745 +Ref: table-close-pipe-return-values336652 +Ref: Close Files And Pipes-Footnote-1337465 +Ref: Close Files And Pipes-Footnote-2337613 +Node: Nonfatal337765 +Node: Output Summary340103 +Node: Output Exercises341325 +Node: Expressions342004 +Node: Values343192 +Node: Constants343870 +Node: Scalar Constants344561 +Ref: Scalar Constants-Footnote-1347071 +Node: Nondecimal-numbers347321 +Node: Regexp Constants350322 +Node: Using Constant Regexps350848 +Node: Standard Regexp Constants351470 +Node: Strong Regexp Constants354658 +Node: Variables357670 +Node: Using Variables358327 +Node: Assignment Options360237 +Node: Conversion362708 +Node: Strings And Numbers363232 +Ref: Strings And Numbers-Footnote-1366295 +Node: Locale influences conversions366404 +Ref: table-locale-affects369162 +Node: All Operators369780 +Node: Arithmetic Ops370409 +Node: Concatenation373125 +Ref: Concatenation-Footnote-1375972 +Node: Assignment Ops376079 +Ref: table-assign-ops381070 +Node: Increment Ops382383 +Node: Truth Values and Conditions385843 +Node: Truth Values386917 +Node: Typing and Comparison387965 +Node: Variable Typing388785 +Ref: Variable Typing-Footnote-1395248 +Ref: Variable Typing-Footnote-2395320 +Node: Comparison Operators395397 +Ref: table-relational-ops395816 +Node: POSIX String Comparison399311 +Ref: POSIX String Comparison-Footnote-1401006 +Ref: POSIX String Comparison-Footnote-2401145 +Node: Boolean Ops401229 +Ref: Boolean Ops-Footnote-1405711 +Node: Conditional Exp405803 +Node: Function Calls407539 +Node: Precedence411416 +Node: Locales415075 +Node: Expressions Summary416707 +Node: Patterns and Actions419280 +Node: Pattern Overview420400 +Node: Regexp Patterns422077 +Node: Expression Patterns422619 +Node: Ranges426400 +Node: BEGIN/END429508 +Node: Using BEGIN/END430269 +Ref: Using BEGIN/END-Footnote-1433023 +Node: I/O And BEGIN/END433129 +Node: BEGINFILE/ENDFILE435442 +Node: Empty438673 +Node: Using Shell Variables438990 +Node: Action Overview441264 +Node: Statements443589 +Node: If Statement445437 +Node: While Statement446932 +Node: Do Statement448960 +Node: For Statement450108 +Node: Switch Statement453279 +Node: Break Statement455720 +Node: Continue Statement457812 +Node: Next Statement459639 +Node: Nextfile Statement462022 +Node: Exit Statement464711 +Node: Built-in Variables467114 +Node: User-modified468247 +Node: Auto-set476014 +Ref: Auto-set-Footnote-1492821 +Ref: Auto-set-Footnote-2493027 +Node: ARGC and ARGV493083 +Node: Pattern Action Summary497296 +Node: Arrays499726 +Node: Array Basics501055 +Node: Array Intro501899 +Ref: figure-array-elements503874 +Ref: Array Intro-Footnote-1506578 +Node: Reference to Elements506706 +Node: Assigning Elements509170 +Node: Array Example509661 +Node: Scanning an Array511420 +Node: Controlling Scanning514442 +Ref: Controlling Scanning-Footnote-1520898 +Node: Numeric Array Subscripts521214 +Node: Uninitialized Subscripts523398 +Node: Delete525017 +Ref: Delete-Footnote-1527769 +Node: Multidimensional527826 +Node: Multiscanning530921 +Node: Arrays of Arrays532512 +Node: Arrays Summary537280 +Node: Functions539373 +Node: Built-in540411 +Node: Calling Built-in541492 +Node: Numeric Functions543488 +Ref: Numeric Functions-Footnote-1547514 +Ref: Numeric Functions-Footnote-2548162 +Ref: Numeric Functions-Footnote-3548210 +Node: String Functions548482 +Ref: String Functions-Footnote-1572623 +Ref: String Functions-Footnote-2572751 +Ref: String Functions-Footnote-3572999 +Node: Gory Details573086 +Ref: table-sub-escapes574877 +Ref: table-sub-proposed576396 +Ref: table-posix-sub577759 +Ref: table-gensub-escapes579300 +Ref: Gory Details-Footnote-1580123 +Node: I/O Functions580277 +Ref: table-system-return-values586731 +Ref: I/O Functions-Footnote-1588811 +Ref: I/O Functions-Footnote-2588959 +Node: Time Functions589079 +Ref: Time Functions-Footnote-1599750 +Ref: Time Functions-Footnote-2599818 +Ref: Time Functions-Footnote-3599976 +Ref: Time Functions-Footnote-4600087 +Ref: Time Functions-Footnote-5600199 +Ref: Time Functions-Footnote-6600426 +Node: Bitwise Functions600692 +Ref: table-bitwise-ops601286 +Ref: Bitwise Functions-Footnote-1607349 +Ref: Bitwise Functions-Footnote-2607522 +Node: Type Functions607713 +Node: I18N Functions610576 +Node: User-defined612227 +Node: Definition Syntax613039 +Ref: Definition Syntax-Footnote-1618733 +Node: Function Example618804 +Ref: Function Example-Footnote-1621726 +Node: Function Calling621748 +Node: Calling A Function622336 +Node: Variable Scope623294 +Node: Pass By Value/Reference626288 +Node: Function Caveats628932 +Ref: Function Caveats-Footnote-1630979 +Node: Return Statement631099 +Node: Dynamic Typing634078 +Node: Indirect Calls635008 +Ref: Indirect Calls-Footnote-1645260 +Node: Functions Summary645388 +Node: Library Functions648093 +Ref: Library Functions-Footnote-1651700 +Ref: Library Functions-Footnote-2651843 +Node: Library Names652014 +Ref: Library Names-Footnote-1655681 +Ref: Library Names-Footnote-2655904 +Node: General Functions655990 +Node: Strtonum Function657093 +Node: Assert Function660115 +Node: Round Function663441 +Node: Cliff Random Function664981 +Node: Ordinal Functions665997 +Ref: Ordinal Functions-Footnote-1669060 +Ref: Ordinal Functions-Footnote-2669312 +Node: Join Function669522 +Ref: Join Function-Footnote-1671292 +Node: Getlocaltime Function671492 +Node: Readfile Function675234 +Node: Shell Quoting677211 +Node: Data File Management678612 +Node: Filetrans Function679244 +Node: Rewind Function683340 +Node: File Checking685249 +Ref: File Checking-Footnote-1686583 +Node: Empty Files686784 +Node: Ignoring Assigns688763 +Node: Getopt Function690313 +Ref: Getopt Function-Footnote-1705524 +Node: Passwd Functions705724 +Ref: Passwd Functions-Footnote-1714563 +Node: Group Functions714651 +Ref: Group Functions-Footnote-1722549 +Node: Walking Arrays722756 +Node: Library Functions Summary725764 +Node: Library Exercises727170 +Node: Sample Programs727635 +Node: Running Examples728405 +Node: Clones729133 +Node: Cut Program730357 +Node: Egrep Program740497 +Node: Id Program749498 +Node: Split Program759445 +Ref: Split Program-Footnote-1769335 +Node: Tee Program769508 +Node: Uniq Program772298 +Node: Wc Program779886 +Node: Bytes vs. Characters780283 +Node: Using extensions781831 +Node: wc program782585 +Node: Miscellaneous Programs787450 +Node: Dupword Program788663 +Node: Alarm Program790693 +Node: Translate Program795548 +Ref: Translate Program-Footnote-1800113 +Node: Labels Program800383 +Ref: Labels Program-Footnote-1803734 +Node: Word Sorting803818 +Node: History Sorting807890 +Node: Extract Program810115 +Node: Simple Sed818169 +Node: Igawk Program821243 +Ref: Igawk Program-Footnote-1835574 +Ref: Igawk Program-Footnote-2835776 +Ref: Igawk Program-Footnote-3835898 +Node: Anagram Program836013 +Node: Signature Program839075 +Node: Programs Summary840322 +Node: Programs Exercises841536 +Ref: Programs Exercises-Footnote-1845666 +Node: Advanced Features845752 +Node: Nondecimal Data847819 +Node: Array Sorting849410 +Node: Controlling Array Traversal850110 +Ref: Controlling Array Traversal-Footnote-1858478 +Node: Array Sorting Functions858596 +Ref: Array Sorting Functions-Footnote-1863687 +Node: Two-way I/O863883 +Ref: Two-way I/O-Footnote-1871604 +Ref: Two-way I/O-Footnote-2871791 +Node: TCP/IP Networking871873 +Node: Profiling874991 +Node: Extension Philosophy884300 +Node: Advanced Features Summary885779 +Node: Internationalization887794 +Node: I18N and L10N889274 +Node: Explaining gettext889961 +Ref: Explaining gettext-Footnote-1895853 +Ref: Explaining gettext-Footnote-2896038 +Node: Programmer i18n896203 +Ref: Programmer i18n-Footnote-1901152 +Node: Translator i18n901201 +Node: String Extraction901995 +Ref: String Extraction-Footnote-1903127 +Node: Printf Ordering903213 +Ref: Printf Ordering-Footnote-1905999 +Node: I18N Portability906063 +Ref: I18N Portability-Footnote-1908519 +Node: I18N Example908582 +Ref: I18N Example-Footnote-1911857 +Ref: I18N Example-Footnote-2911930 +Node: Gawk I18N912039 +Node: I18N Summary912688 +Node: Debugger914029 +Node: Debugging915029 +Node: Debugging Concepts915470 +Node: Debugging Terms917279 +Node: Awk Debugging919854 +Ref: Awk Debugging-Footnote-1920799 +Node: Sample Debugging Session920931 +Node: Debugger Invocation921465 +Node: Finding The Bug922851 +Node: List of Debugger Commands929325 +Node: Breakpoint Control930658 +Node: Debugger Execution Control934352 +Node: Viewing And Changing Data937714 +Node: Execution Stack941255 +Node: Debugger Info942892 +Node: Miscellaneous Debugger Commands946963 +Node: Readline Support952025 +Node: Limitations952921 +Node: Debugging Summary955475 +Node: Namespaces956754 +Node: Global Namespace957865 +Node: Qualified Names959263 +Node: Default Namespace960262 +Node: Changing The Namespace961003 +Node: Naming Rules962617 +Node: Internal Name Management964465 +Node: Namespace Example965507 +Node: Namespace And Features968069 +Node: Namespace Summary969504 +Node: Arbitrary Precision Arithmetic970981 +Node: Computer Arithmetic972468 +Ref: table-numeric-ranges976234 +Ref: table-floating-point-ranges976727 +Ref: Computer Arithmetic-Footnote-1977385 +Node: Math Definitions977442 +Ref: table-ieee-formats980418 +Node: MPFR features980985 +Node: FP Math Caution982703 +Ref: FP Math Caution-Footnote-1983775 +Node: Inexactness of computations984144 +Node: Inexact representation985175 +Node: Comparing FP Values986535 +Node: Errors accumulate987776 +Node: Strange values989232 +Ref: Strange values-Footnote-1991820 +Node: Getting Accuracy991925 +Node: Try To Round994635 +Node: Setting precision995534 +Ref: table-predefined-precision-strings996231 +Node: Setting the rounding mode998061 +Ref: table-gawk-rounding-modes998435 +Ref: Setting the rounding mode-Footnote-11002366 +Node: Arbitrary Precision Integers1002545 +Ref: Arbitrary Precision Integers-Footnote-11005720 +Node: Checking for MPFR1005869 +Node: POSIX Floating Point Problems1007343 +Ref: POSIX Floating Point Problems-Footnote-11011628 +Node: Floating point summary1011666 +Node: Dynamic Extensions1013856 +Node: Extension Intro1015409 +Node: Plugin License1016675 +Node: Extension Mechanism Outline1017472 +Ref: figure-load-extension1017911 +Ref: figure-register-new-function1019476 +Ref: figure-call-new-function1020568 +Node: Extension API Description1022630 +Node: Extension API Functions Introduction1024343 +Ref: table-api-std-headers1026179 +Node: General Data Types1030428 +Ref: General Data Types-Footnote-11039058 +Node: Memory Allocation Functions1039357 +Ref: Memory Allocation Functions-Footnote-11043858 +Node: Constructor Functions1043957 +Node: API Ownership of MPFR and GMP Values1047423 +Node: Registration Functions1048736 +Node: Extension Functions1049436 +Node: Exit Callback Functions1054758 +Node: Extension Version String1056008 +Node: Input Parsers1056671 +Node: Output Wrappers1069392 +Node: Two-way processors1073904 +Node: Printing Messages1076169 +Ref: Printing Messages-Footnote-11077340 +Node: Updating ERRNO1077493 +Node: Requesting Values1078232 +Ref: table-value-types-returned1078969 +Node: Accessing Parameters1079905 +Node: Symbol Table Access1081142 +Node: Symbol table by name1081654 +Ref: Symbol table by name-Footnote-11084678 +Node: Symbol table by cookie1084806 +Ref: Symbol table by cookie-Footnote-11088991 +Node: Cached values1089055 +Ref: Cached values-Footnote-11092591 +Node: Array Manipulation1092744 +Ref: Array Manipulation-Footnote-11093835 +Node: Array Data Types1093872 +Ref: Array Data Types-Footnote-11096530 +Node: Array Functions1096622 +Node: Flattening Arrays1101120 +Node: Creating Arrays1108096 +Node: Redirection API1112863 +Node: Extension API Variables1115696 +Node: Extension Versioning1116407 +Ref: gawk-api-version1116836 +Node: Extension GMP/MPFR Versioning1118567 +Node: Extension API Informational Variables1120195 +Node: Extension API Boilerplate1121268 +Node: Changes from API V11125242 +Node: Finding Extensions1126814 +Node: Extension Example1127373 +Node: Internal File Description1128171 +Node: Internal File Ops1132251 +Ref: Internal File Ops-Footnote-11143601 +Node: Using Internal File Ops1143741 +Ref: Using Internal File Ops-Footnote-11146124 +Node: Extension Samples1146398 +Node: Extension Sample File Functions1147927 +Node: Extension Sample Fnmatch1155576 +Node: Extension Sample Fork1157063 +Node: Extension Sample Inplace1158281 +Node: Extension Sample Ord1161907 +Node: Extension Sample Readdir1162743 +Ref: table-readdir-file-types1163632 +Node: Extension Sample Revout1164699 +Node: Extension Sample Rev2way1165288 +Node: Extension Sample Read write array1166028 +Node: Extension Sample Readfile1167970 +Node: Extension Sample Time1169065 +Node: Extension Sample API Tests1170817 +Node: gawkextlib1171309 +Node: Extension summary1174227 +Node: Extension Exercises1177929 +Node: Language History1179171 +Node: V7/SVR3.11180827 +Node: SVR41182979 +Node: POSIX1184413 +Node: BTL1185794 +Node: POSIX/GNU1186523 +Node: Feature History1192301 +Node: Common Extensions1208620 +Node: Ranges and Locales1209903 +Ref: Ranges and Locales-Footnote-11214519 +Ref: Ranges and Locales-Footnote-21214546 +Ref: Ranges and Locales-Footnote-31214781 +Node: Contributors1215004 +Node: History summary1221001 +Node: Installation1222381 +Node: Gawk Distribution1223325 +Node: Getting1223809 +Node: Extracting1224772 +Node: Distribution contents1226410 +Node: Unix Installation1232890 +Node: Quick Installation1233572 +Node: Shell Startup Files1235986 +Node: Additional Configuration Options1237075 +Node: Configuration Philosophy1239390 +Node: Non-Unix Installation1241759 +Node: PC Installation1242219 +Node: PC Binary Installation1243057 +Node: PC Compiling1243492 +Node: PC Using1244609 +Node: Cygwin1248162 +Node: MSYS1249386 +Node: VMS Installation1249988 +Node: VMS Compilation1250779 +Ref: VMS Compilation-Footnote-11252008 +Node: VMS Dynamic Extensions1252066 +Node: VMS Installation Details1253751 +Node: VMS Running1256004 +Node: VMS GNV1260283 +Node: VMS Old Gawk1261018 +Node: Bugs1261489 +Node: Bug address1262152 +Node: Usenet1265134 +Node: Maintainers1266138 +Node: Other Versions1267323 +Node: Installation summary1275188 +Node: Notes1276397 +Node: Compatibility Mode1277191 +Node: Additions1277973 +Node: Accessing The Source1278898 +Node: Adding Code1280335 +Node: New Ports1286554 +Node: Derived Files1290929 +Ref: Derived Files-Footnote-11296589 +Ref: Derived Files-Footnote-21296624 +Ref: Derived Files-Footnote-31297222 +Node: Future Extensions1297336 +Node: Implementation Limitations1297994 +Node: Extension Design1299204 +Node: Old Extension Problems1300348 +Ref: Old Extension Problems-Footnote-11301866 +Node: Extension New Mechanism Goals1301923 +Ref: Extension New Mechanism Goals-Footnote-11305287 +Node: Extension Other Design Decisions1305476 +Node: Extension Future Growth1307589 +Node: Notes summary1308195 +Node: Basic Concepts1309353 +Node: Basic High Level1310034 +Ref: figure-general-flow1310316 +Ref: figure-process-flow1311001 +Ref: Basic High Level-Footnote-11314302 +Node: Basic Data Typing1314487 +Node: Glossary1317815 +Node: Copying1349700 +Node: GNU Free Documentation License1387243 +Node: Index1412363 End Tag Table |