diff options
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 1160 |
1 files changed, 577 insertions, 583 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index 5a07d84d..8035803b 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -1159,13 +1159,6 @@ system for Intel(R), Power Architecture, Sun SPARC, IBM S/390, and other systems.(2) Many GNU/Linux distributions are available for download from the Internet. - (There are numerous other freely available, Unix-like operating -systems based on the Berkeley Software Distribution, and some of them -use recent versions of `gawk' for their versions of `awk'. NetBSD -(http://www.netbsd.org), FreeBSD (http://www.freebsd.org), and OpenBSD -(http://www.openbsd.org) are three of the most popular ones, but there -are others.) - The Info file itself has gone through a number of previous editions. Paul Rubin wrote the very first draft of `The GAWK Manual'; it was around 40 pages in size. Diane Close and Richard Stallman improved it, @@ -1300,16 +1293,26 @@ be a pleasure working with this team of fine people. Notable code and documentation contributions were made by a number of people. *Note Contributors::, for the full list. - Thanks to Patrice Dumas for the new `makeinfo' program. Thanks to + Thanks to Patrice Dumas for the new `makeinfo' program. Thanks to Karl Berry who continues to work to keep the Texinfo markup language sane. + Robert P.J. Day, Michael Brennan and Brian Kernighan kindly acted as +reviewers for the 2015 edition of this Info file. Their feedback helped +improve the final work. + I would like to thank Brian Kernighan for invaluable assistance during the testing and debugging of `gawk', and for ongoing help and advice in clarifying numerous points about the language. We could not have done nearly as good a job on either `gawk' or its documentation without his help. + Brian is in a class by himself as a programmer and technical author. +I have to thank him (yet again) for his ongoing friendship and the +role-model he has been for me for close to 30 years! Having him as a +reviewer is an exciting privilege. It has also been extremely +humbling... + I must thank my wonderful wife, Miriam, for her patience through the many versions of this project, for her proofreading, and for sharing me with the computer. I would like to thank my parents for their love, @@ -1927,12 +1930,13 @@ different ways to do the same things shown here: * Print the length of the longest line in `data': - expand data | awk '{ if (x < length()) x = length() } + expand data | awk '{ if (x < length($0)) x = length($0) } END { print "maximum line length is " x }' + This example differs slightly from the first example in this list: The input is processed by the `expand' utility to change TABs into spaces, so the widths compared are actually the right-margin - columns. + columns, as opposed to the number of input characters on each line. * Print every line that has at least one field: @@ -6786,9 +6790,9 @@ message to standard error in an `awk' program is as follows: This works by opening a pipeline to a shell command that can access the standard error stream that it inherits from the `awk' process. This is -far from elegant, and it is also inefficient, because it requires a -separate process. So people writing `awk' programs often don't do -this. Instead, they send the error messages to the screen, like this: +far from elegant, and it also requires a separate process. So people +writing `awk' programs often don't do this. Instead, they send the +error messages to the screen, like this: print "Serious error detected!" > "/dev/tty" @@ -7803,8 +7807,9 @@ Otherwise, it's parsed as follows: => -12 (-24) => -12-24 - As mentioned earlier, when doing concatenation, _parenthesize_. -Otherwise, you're never quite sure what you'll get. + As mentioned earlier, when mixing concatenation with other +operators, _parenthesize_. Otherwise, you're never quite sure what +you'll get. ---------- Footnotes ---------- @@ -8138,16 +8143,11 @@ File: gawk.info, Node: Variable Typing, Next: Comparison Operators, Up: Typin 6.3.2.1 String Type Versus Numeric Type ....................................... -The 1992 POSIX standard introduced the concept of a "numeric string", -which is simply a string that looks like a number--for example, -`" +2"'. This concept is used for determining the type of a variable. -The type of the variable is important because the types of two variables -determine how they are compared. - - The various versions of the POSIX standard did not get the rules -quite right for several editions. Fortunately, as of at least the 2008 -standard (and possibly earlier), the standard has been fixed, and -variable typing follows these rules:(1) +The POSIX standard introduced the concept of a "numeric string", which +is simply a string that looks like a number--for example, `" +2"'. +This concept is used for determining the type of a variable. The type +of the variable is important because the types of two variables +determine how they are compared. Variable typing follows these rules: * A numeric constant or the result of a numeric operation has the NUMERIC attribute. @@ -8225,11 +8225,6 @@ comparison between the two different constants is true, `0' otherwise: $ echo ' +3.14' | gawk '{ print $1 == 3.14 }' True -| 1 - ---------- Footnotes ---------- - - (1) `gawk' has followed these rules for many years, and it is -gratifying that the POSIX standard is also now correct. - File: gawk.info, Node: Comparison Operators, Next: POSIX String Comparison, Prev: Variable Typing, Up: Typing and Comparison @@ -11695,7 +11690,8 @@ brackets ([ ]): `log(X)' Return the natural logarithm of X, if X is positive; otherwise, - report an error. + return `NaN' ("not a number") on IEEE 754 systems. Additionally, + `gawk' prints a warning message when `x' is negative. `rand()' Return a random number. The values of `rand()' are uniformly @@ -31198,7 +31194,6 @@ Index * algorithms: Basic High Level. (line 68) * allocating memory for extensions: Memory Allocation Functions. (line 6) -* Alpha (DEC): Manual History. (line 28) * amazing awk assembler (aaa): Glossary. (line 11) * amazingly workable formatter (awf): Glossary. (line 24) * ambiguity, syntactic: /= operator vs. /=.../ regexp constant: Assignment Ops. @@ -31614,7 +31609,7 @@ Index (line 131) * close() function, two-way pipes and: Two-way I/O. (line 77) * Close, Diane <1>: Contributors. (line 20) -* Close, Diane: Manual History. (line 41) +* Close, Diane: Manual History. (line 34) * Collado, Manuel: Acknowledgments. (line 60) * collating elements: Bracket Expressions. (line 77) * collating symbols: Bracket Expressions. (line 84) @@ -32399,7 +32394,7 @@ Index (line 47) * functions, user-defined, next/nextfile statements and: Next Statement. (line 45) -* G-d: Acknowledgments. (line 82) +* G-d: Acknowledgments. (line 92) * Garfinkle, Scott: Contributors. (line 34) * gawk program, dynamic profiling: Profiling. (line 179) * gawk version: Auto-set. (line 199) @@ -32725,7 +32720,7 @@ Index * Kernighan, Brian <6>: Library Functions. (line 12) * Kernighan, Brian <7>: Concatenation. (line 6) * Kernighan, Brian <8>: Getline/Pipe. (line 6) -* Kernighan, Brian <9>: Acknowledgments. (line 76) +* Kernighan, Brian <9>: Acknowledgments. (line 80) * Kernighan, Brian <10>: Conventions. (line 34) * Kernighan, Brian: History. (line 17) * kill command, dynamic profiling: Profiling. (line 188) @@ -33279,12 +33274,12 @@ Index * Rakitzis, Byron: History Sorting. (line 25) * Ramey, Chet <1>: General Data Types. (line 6) * Ramey, Chet: Acknowledgments. (line 60) -* rand: Numeric Functions. (line 34) +* rand: Numeric Functions. (line 35) * random numbers, Cliff: Cliff Random Function. (line 6) * random numbers, rand()/srand() functions: Numeric Functions. - (line 34) -* random numbers, seed of: Numeric Functions. (line 64) + (line 35) +* random numbers, seed of: Numeric Functions. (line 65) * range expressions (regexps): Bracket Expressions. (line 6) * range patterns: Ranges. (line 6) * range patterns, line continuation and: Ranges. (line 65) @@ -33406,11 +33401,11 @@ Index * Robbins, Arnold: Command Line Field Separator. (line 73) * Robbins, Bill: Getline/Pipe. (line 39) -* Robbins, Harry: Acknowledgments. (line 82) -* Robbins, Jean: Acknowledgments. (line 82) +* Robbins, Harry: Acknowledgments. (line 92) +* Robbins, Jean: Acknowledgments. (line 92) * Robbins, Miriam <1>: Passwd Functions. (line 90) * Robbins, Miriam <2>: Getline/Pipe. (line 39) -* Robbins, Miriam: Acknowledgments. (line 82) +* Robbins, Miriam: Acknowledgments. (line 92) * Rommel, Kai Uwe: Contributors. (line 42) * round to nearest integer: Numeric Functions. (line 23) * round() user-defined function: Round Function. (line 16) @@ -33462,7 +33457,7 @@ Index * sed utility <2>: Simple Sed. (line 6) * sed utility: Field Splitting Summary. (line 46) -* seeding random number generator: Numeric Functions. (line 64) +* seeding random number generator: Numeric Functions. (line 65) * semicolon (;), AWKPATH variable and: PC Using. (line 10) * semicolon (;), separating statements in actions <1>: Statements. (line 10) @@ -33564,8 +33559,8 @@ Index * SIGUSR1 signal, for dynamic profiling: Profiling. (line 188) * silent debugger command: Debugger Execution Control. (line 10) -* sin: Numeric Functions. (line 75) -* sine: Numeric Functions. (line 75) +* sin: Numeric Functions. (line 76) +* sine: Numeric Functions. (line 76) * single quote ('): One-shot. (line 15) * single quote (') in gawk command lines: Long. (line 33) * single quote ('), in shell commands: Quoting. (line 48) @@ -33615,10 +33610,10 @@ Index * sprintf() function, OFMT variable and: User-modified. (line 114) * sprintf() function, print/printf statements and: Round Function. (line 6) -* sqrt: Numeric Functions. (line 78) +* sqrt: Numeric Functions. (line 79) * square brackets ([]), regexp operator: Regexp Operators. (line 56) -* square root: Numeric Functions. (line 78) -* srand: Numeric Functions. (line 82) +* square root: Numeric Functions. (line 79) +* srand: Numeric Functions. (line 83) * stack frame: Debugging Terms. (line 10) * Stallman, Richard <1>: Glossary. (line 296) * Stallman, Richard <2>: Contributors. (line 23) @@ -33971,541 +33966,540 @@ Node: This Manual53600 Ref: This Manual-Footnote-159379 Node: Conventions59479 Node: Manual History61635 -Ref: Manual History-Footnote-165074 -Ref: Manual History-Footnote-265115 -Node: How To Contribute65189 -Node: Acknowledgments66428 -Node: Getting Started70724 -Node: Running gawk73158 -Node: One-shot74348 -Node: Read Terminal75573 -Ref: Read Terminal-Footnote-177223 -Ref: Read Terminal-Footnote-277499 -Node: Long77670 -Node: Executable Scripts79046 -Ref: Executable Scripts-Footnote-180879 -Ref: Executable Scripts-Footnote-280981 -Node: Comments81528 -Node: Quoting84001 -Node: DOS Quoting89317 -Node: Sample Data Files89992 -Node: Very Simple92507 -Node: Two Rules97145 -Node: More Complex99039 -Ref: More Complex-Footnote-1101971 -Node: Statements/Lines102056 -Ref: Statements/Lines-Footnote-1106512 -Node: Other Features106777 -Node: When107705 -Node: Intro Summary109875 -Node: Invoking Gawk110641 -Node: Command Line112156 -Node: Options112947 -Ref: Options-Footnote-1128776 -Node: Other Arguments128801 -Node: Naming Standard Input131463 -Node: Environment Variables132557 -Node: AWKPATH Variable133115 -Ref: AWKPATH Variable-Footnote-1135987 -Ref: AWKPATH Variable-Footnote-2136032 -Node: AWKLIBPATH Variable136292 -Node: Other Environment Variables137051 -Node: Exit Status140706 -Node: Include Files141381 -Node: Loading Shared Libraries144959 -Node: Obsolete146343 -Node: Undocumented147040 -Node: Invoking Summary147307 -Node: Regexp148887 -Node: Regexp Usage150337 -Node: Escape Sequences152370 -Node: Regexp Operators158037 -Ref: Regexp Operators-Footnote-1165517 -Ref: Regexp Operators-Footnote-2165664 -Node: Bracket Expressions165762 -Ref: table-char-classes167652 -Node: GNU Regexp Operators170592 -Node: Case-sensitivity174315 -Ref: Case-sensitivity-Footnote-1177207 -Ref: Case-sensitivity-Footnote-2177442 -Node: Leftmost Longest177550 -Node: Computed Regexps178751 -Node: Regexp Summary182123 -Node: Reading Files183594 -Node: Records185686 -Node: awk split records186429 -Node: gawk split records191287 -Ref: gawk split records-Footnote-1195808 -Node: Fields195845 -Ref: Fields-Footnote-1198809 -Node: Nonconstant Fields198895 -Ref: Nonconstant Fields-Footnote-1201125 -Node: Changing Fields201327 -Node: Field Separators207281 -Node: Default Field Splitting209983 -Node: Regexp Field Splitting211100 -Node: Single Character Fields214441 -Node: Command Line Field Separator215500 -Node: Full Line Fields218842 -Ref: Full Line Fields-Footnote-1219350 -Node: Field Splitting Summary219396 -Ref: Field Splitting Summary-Footnote-1222495 -Node: Constant Size222596 -Node: Splitting By Content227203 -Ref: Splitting By Content-Footnote-1230953 -Node: Multiple Line230993 -Ref: Multiple Line-Footnote-1236849 -Node: Getline237028 -Node: Plain Getline239244 -Node: Getline/Variable241339 -Node: Getline/File242486 -Node: Getline/Variable/File243870 -Ref: Getline/Variable/File-Footnote-1245469 -Node: Getline/Pipe245556 -Node: Getline/Variable/Pipe248255 -Node: Getline/Coprocess249362 -Node: Getline/Variable/Coprocess250614 -Node: Getline Notes251351 -Node: Getline Summary254155 -Ref: table-getline-variants254563 -Node: Read Timeout255475 -Ref: Read Timeout-Footnote-1259302 -Node: Command line directories259360 -Node: Input Summary260264 -Node: Input Exercises263401 -Node: Printing264134 -Node: Print265856 -Node: Print Examples267197 -Node: Output Separators269976 -Node: OFMT271992 -Node: Printf273350 -Node: Basic Printf274256 -Node: Control Letters275795 -Node: Format Modifiers279786 -Node: Printf Examples285813 -Node: Redirection288277 -Node: Special Files295249 -Node: Special FD295780 -Ref: Special FD-Footnote-1299404 -Node: Special Network299478 -Node: Special Caveats300328 -Node: Close Files And Pipes301124 -Ref: Close Files And Pipes-Footnote-1308285 -Ref: Close Files And Pipes-Footnote-2308433 -Node: Output Summary308583 -Node: Output exercises309580 -Node: Expressions310260 -Node: Values311445 -Node: Constants312121 -Node: Scalar Constants312801 -Ref: Scalar Constants-Footnote-1313660 -Node: Nondecimal-numbers313910 -Node: Regexp Constants316910 -Node: Using Constant Regexps317385 -Node: Variables320455 -Node: Using Variables321110 -Node: Assignment Options322834 -Node: Conversion324709 -Node: Strings And Numbers325233 -Ref: Strings And Numbers-Footnote-1328295 -Node: Locale influences conversions328404 -Ref: table-locale-affects331121 -Node: All Operators331709 -Node: Arithmetic Ops332339 -Node: Concatenation334844 -Ref: Concatenation-Footnote-1337640 -Node: Assignment Ops337760 -Ref: table-assign-ops342743 -Node: Increment Ops344060 -Node: Truth Values and Conditions347498 -Node: Truth Values348581 -Node: Typing and Comparison349630 -Node: Variable Typing350423 -Ref: Variable Typing-Footnote-1354323 -Node: Comparison Operators354445 -Ref: table-relational-ops354855 -Node: POSIX String Comparison358405 -Ref: POSIX String Comparison-Footnote-1359489 -Node: Boolean Ops359627 -Ref: Boolean Ops-Footnote-1363697 -Node: Conditional Exp363788 -Node: Function Calls365515 -Node: Precedence369395 -Node: Locales373064 -Node: Expressions Summary374695 -Node: Patterns and Actions377236 -Node: Pattern Overview378352 -Node: Regexp Patterns380029 -Node: Expression Patterns380572 -Node: Ranges384353 -Node: BEGIN/END387459 -Node: Using BEGIN/END388221 -Ref: Using BEGIN/END-Footnote-1390957 -Node: I/O And BEGIN/END391063 -Node: BEGINFILE/ENDFILE393348 -Node: Empty396279 -Node: Using Shell Variables396596 -Node: Action Overview398879 -Node: Statements401206 -Node: If Statement403054 -Node: While Statement404552 -Node: Do Statement406596 -Node: For Statement407752 -Node: Switch Statement410904 -Node: Break Statement413007 -Node: Continue Statement415062 -Node: Next Statement416855 -Node: Nextfile Statement419245 -Node: Exit Statement421900 -Node: Built-in Variables424304 -Node: User-modified425431 -Ref: User-modified-Footnote-1433120 -Node: Auto-set433182 -Ref: Auto-set-Footnote-1445764 -Ref: Auto-set-Footnote-2445969 -Node: ARGC and ARGV446025 -Node: Pattern Action Summary449879 -Node: Arrays452102 -Node: Array Basics453651 -Node: Array Intro454477 -Ref: figure-array-elements456450 -Node: Reference to Elements458857 -Node: Assigning Elements461130 -Node: Array Example461621 -Node: Scanning an Array463353 -Node: Controlling Scanning466368 -Ref: Controlling Scanning-Footnote-1471541 -Node: Delete471857 -Ref: Delete-Footnote-1474622 -Node: Numeric Array Subscripts474679 -Node: Uninitialized Subscripts476862 -Node: Multidimensional478487 -Node: Multiscanning481580 -Node: Arrays of Arrays483169 -Node: Arrays Summary487832 -Node: Functions489937 -Node: Built-in490810 -Node: Calling Built-in491888 -Node: Numeric Functions493876 -Ref: Numeric Functions-Footnote-1497710 -Ref: Numeric Functions-Footnote-2498067 -Ref: Numeric Functions-Footnote-3498115 -Node: String Functions498384 -Ref: String Functions-Footnote-1521395 -Ref: String Functions-Footnote-2521524 -Ref: String Functions-Footnote-3521772 -Node: Gory Details521859 -Ref: table-sub-escapes523528 -Ref: table-sub-posix-92524882 -Ref: table-sub-proposed526233 -Ref: table-posix-sub527587 -Ref: table-gensub-escapes529132 -Ref: Gory Details-Footnote-1530308 -Ref: Gory Details-Footnote-2530359 -Node: I/O Functions530510 -Ref: I/O Functions-Footnote-1537633 -Node: Time Functions537780 -Ref: Time Functions-Footnote-1548244 -Ref: Time Functions-Footnote-2548312 -Ref: Time Functions-Footnote-3548470 -Ref: Time Functions-Footnote-4548581 -Ref: Time Functions-Footnote-5548693 -Ref: Time Functions-Footnote-6548920 -Node: Bitwise Functions549186 -Ref: table-bitwise-ops549748 -Ref: Bitwise Functions-Footnote-1553993 -Node: Type Functions554177 -Node: I18N Functions555319 -Node: User-defined556964 -Node: Definition Syntax557768 -Ref: Definition Syntax-Footnote-1562947 -Node: Function Example563016 -Ref: Function Example-Footnote-1565660 -Node: Function Caveats565682 -Node: Calling A Function566200 -Node: Variable Scope567155 -Node: Pass By Value/Reference570143 -Node: Return Statement573651 -Node: Dynamic Typing576635 -Node: Indirect Calls577564 -Node: Functions Summary587277 -Node: Library Functions589816 -Ref: Library Functions-Footnote-1593434 -Ref: Library Functions-Footnote-2593577 -Node: Library Names593748 -Ref: Library Names-Footnote-1597221 -Ref: Library Names-Footnote-2597441 -Node: General Functions597527 -Node: Strtonum Function598555 -Node: Assert Function601335 -Node: Round Function604661 -Node: Cliff Random Function606202 -Node: Ordinal Functions607218 -Ref: Ordinal Functions-Footnote-1610295 -Ref: Ordinal Functions-Footnote-2610547 -Node: Join Function610758 -Ref: Join Function-Footnote-1612529 -Node: Getlocaltime Function612729 -Node: Readfile Function616465 -Node: Data File Management618304 -Node: Filetrans Function618936 -Node: Rewind Function623005 -Node: File Checking624563 -Ref: File Checking-Footnote-1625695 -Node: Empty Files625896 -Node: Ignoring Assigns627875 -Node: Getopt Function629429 -Ref: Getopt Function-Footnote-1640732 -Node: Passwd Functions640935 -Ref: Passwd Functions-Footnote-1649914 -Node: Group Functions650002 -Ref: Group Functions-Footnote-1657943 -Node: Walking Arrays658156 -Node: Library Functions Summary659759 -Node: Library exercises661147 -Node: Sample Programs662427 -Node: Running Examples663197 -Node: Clones663925 -Node: Cut Program665149 -Node: Egrep Program675017 -Ref: Egrep Program-Footnote-1682988 -Node: Id Program683098 -Node: Split Program686762 -Ref: Split Program-Footnote-1690300 -Node: Tee Program690428 -Node: Uniq Program693235 -Node: Wc Program700665 -Ref: Wc Program-Footnote-1704930 -Node: Miscellaneous Programs705022 -Node: Dupword Program706235 -Node: Alarm Program708266 -Node: Translate Program713080 -Ref: Translate Program-Footnote-1717471 -Ref: Translate Program-Footnote-2717741 -Node: Labels Program717875 -Ref: Labels Program-Footnote-1721246 -Node: Word Sorting721330 -Node: History Sorting725373 -Node: Extract Program727209 -Node: Simple Sed734745 -Node: Igawk Program737807 -Ref: Igawk Program-Footnote-1752118 -Ref: Igawk Program-Footnote-2752319 -Node: Anagram Program752457 -Node: Signature Program755525 -Node: Programs Summary756772 -Node: Programs Exercises757987 -Node: Advanced Features761638 -Node: Nondecimal Data763586 -Node: Array Sorting765163 -Node: Controlling Array Traversal765860 -Node: Array Sorting Functions774140 -Ref: Array Sorting Functions-Footnote-1778047 -Node: Two-way I/O778241 -Ref: Two-way I/O-Footnote-1783757 -Node: TCP/IP Networking783839 -Node: Profiling786683 -Node: Advanced Features Summary794225 -Node: Internationalization796089 -Node: I18N and L10N797569 -Node: Explaining gettext798255 -Ref: Explaining gettext-Footnote-1803395 -Ref: Explaining gettext-Footnote-2803579 -Node: Programmer i18n803744 -Node: Translator i18n807969 -Node: String Extraction808763 -Ref: String Extraction-Footnote-1809724 -Node: Printf Ordering809810 -Ref: Printf Ordering-Footnote-1812592 -Node: I18N Portability812656 -Ref: I18N Portability-Footnote-1815105 -Node: I18N Example815168 -Ref: I18N Example-Footnote-1817890 -Node: Gawk I18N817962 -Node: I18N Summary818600 -Node: Debugger819939 -Node: Debugging820961 -Node: Debugging Concepts821402 -Node: Debugging Terms823258 -Node: Awk Debugging825855 -Node: Sample Debugging Session826747 -Node: Debugger Invocation827267 -Node: Finding The Bug828600 -Node: List of Debugger Commands835082 -Node: Breakpoint Control836414 -Node: Debugger Execution Control840078 -Node: Viewing And Changing Data843438 -Node: Execution Stack846796 -Node: Debugger Info848309 -Node: Miscellaneous Debugger Commands852303 -Node: Readline Support857487 -Node: Limitations858379 -Node: Debugging Summary860653 -Node: Arbitrary Precision Arithmetic861817 -Node: Computer Arithmetic863146 -Ref: Computer Arithmetic-Footnote-1867533 -Node: Math Definitions867590 -Ref: table-ieee-formats870474 -Node: MPFR features870978 -Node: FP Math Caution872620 -Ref: FP Math Caution-Footnote-1873661 -Node: Inexactness of computations874030 -Node: Inexact representation874978 -Node: Comparing FP Values876333 -Node: Errors accumulate877297 -Node: Getting Accuracy878730 -Node: Try To Round881389 -Node: Setting precision882288 -Ref: table-predefined-precision-strings882970 -Node: Setting the rounding mode884763 -Ref: table-gawk-rounding-modes885127 -Ref: Setting the rounding mode-Footnote-1888581 -Node: Arbitrary Precision Integers888760 -Ref: Arbitrary Precision Integers-Footnote-1891763 -Node: POSIX Floating Point Problems891912 -Ref: POSIX Floating Point Problems-Footnote-1895788 -Node: Floating point summary895826 -Node: Dynamic Extensions898043 -Node: Extension Intro899595 -Node: Plugin License900860 -Node: Extension Mechanism Outline901545 -Ref: figure-load-extension901969 -Ref: figure-load-new-function903454 -Ref: figure-call-new-function904456 -Node: Extension API Description906440 -Node: Extension API Functions Introduction907890 -Node: General Data Types912755 -Ref: General Data Types-Footnote-1918448 -Node: Requesting Values918747 -Ref: table-value-types-returned919484 -Node: Memory Allocation Functions920442 -Ref: Memory Allocation Functions-Footnote-1923189 -Node: Constructor Functions923285 -Node: Registration Functions925043 -Node: Extension Functions925728 -Node: Exit Callback Functions928030 -Node: Extension Version String929279 -Node: Input Parsers929929 -Node: Output Wrappers939743 -Node: Two-way processors944259 -Node: Printing Messages946463 -Ref: Printing Messages-Footnote-1947540 -Node: Updating `ERRNO'947692 -Node: Accessing Parameters948431 -Node: Symbol Table Access949661 -Node: Symbol table by name950175 -Node: Symbol table by cookie952151 -Ref: Symbol table by cookie-Footnote-1956284 -Node: Cached values956347 -Ref: Cached values-Footnote-1959851 -Node: Array Manipulation959942 -Ref: Array Manipulation-Footnote-1961040 -Node: Array Data Types961079 -Ref: Array Data Types-Footnote-1963782 -Node: Array Functions963874 -Node: Flattening Arrays967748 -Node: Creating Arrays974600 -Node: Extension API Variables979331 -Node: Extension Versioning979967 -Node: Extension API Informational Variables981868 -Node: Extension API Boilerplate982954 -Node: Finding Extensions986758 -Node: Extension Example987318 -Node: Internal File Description988048 -Node: Internal File Ops992139 -Ref: Internal File Ops-Footnote-11003571 -Node: Using Internal File Ops1003711 -Ref: Using Internal File Ops-Footnote-11006058 -Node: Extension Samples1006326 -Node: Extension Sample File Functions1007850 -Node: Extension Sample Fnmatch1015418 -Node: Extension Sample Fork1016900 -Node: Extension Sample Inplace1018113 -Node: Extension Sample Ord1019788 -Node: Extension Sample Readdir1020624 -Ref: table-readdir-file-types1021480 -Node: Extension Sample Revout1022279 -Node: Extension Sample Rev2way1022870 -Node: Extension Sample Read write array1023611 -Node: Extension Sample Readfile1025490 -Node: Extension Sample API Tests1026590 -Node: Extension Sample Time1027115 -Node: gawkextlib1028430 -Node: Extension summary1031243 -Node: Extension Exercises1034936 -Node: Language History1035658 -Node: V7/SVR3.11037301 -Node: SVR41039621 -Node: POSIX1041063 -Node: BTL1042449 -Node: POSIX/GNU1043183 -Node: Feature History1048926 -Node: Common Extensions1062056 -Node: Ranges and Locales1063368 -Ref: Ranges and Locales-Footnote-11067985 -Ref: Ranges and Locales-Footnote-21068012 -Ref: Ranges and Locales-Footnote-31068246 -Node: Contributors1068467 -Node: History summary1073892 -Node: Installation1075261 -Node: Gawk Distribution1076212 -Node: Getting1076696 -Node: Extracting1077520 -Node: Distribution contents1079162 -Node: Unix Installation1084879 -Node: Quick Installation1085496 -Node: Additional Configuration Options1087938 -Node: Configuration Philosophy1089676 -Node: Non-Unix Installation1092027 -Node: PC Installation1092485 -Node: PC Binary Installation1093796 -Node: PC Compiling1095644 -Ref: PC Compiling-Footnote-11098643 -Node: PC Testing1098748 -Node: PC Using1099924 -Node: Cygwin1104082 -Node: MSYS1104891 -Node: VMS Installation1105405 -Node: VMS Compilation1106201 -Ref: VMS Compilation-Footnote-11107423 -Node: VMS Dynamic Extensions1107481 -Node: VMS Installation Details1108854 -Node: VMS Running1111106 -Node: VMS GNV1113940 -Node: VMS Old Gawk1114663 -Node: Bugs1115133 -Node: Other Versions1119137 -Node: Installation summary1125392 -Node: Notes1126448 -Node: Compatibility Mode1127313 -Node: Additions1128095 -Node: Accessing The Source1129020 -Node: Adding Code1130456 -Node: New Ports1136634 -Node: Derived Files1141115 -Ref: Derived Files-Footnote-11146196 -Ref: Derived Files-Footnote-21146230 -Ref: Derived Files-Footnote-31146826 -Node: Future Extensions1146940 -Node: Implementation Limitations1147546 -Node: Extension Design1148794 -Node: Old Extension Problems1149948 -Ref: Old Extension Problems-Footnote-11151465 -Node: Extension New Mechanism Goals1151522 -Ref: Extension New Mechanism Goals-Footnote-11154882 -Node: Extension Other Design Decisions1155071 -Node: Extension Future Growth1157177 -Node: Old Extension Mechanism1158013 -Node: Notes summary1159775 -Node: Basic Concepts1160961 -Node: Basic High Level1161642 -Ref: figure-general-flow1161914 -Ref: figure-process-flow1162513 -Ref: Basic High Level-Footnote-11165742 -Node: Basic Data Typing1165927 -Node: Glossary1169255 -Node: Copying1194407 -Node: GNU Free Documentation License1231963 -Node: Index1257099 +Ref: Manual History-Footnote-164714 +Ref: Manual History-Footnote-264755 +Node: How To Contribute64829 +Node: Acknowledgments66068 +Node: Getting Started70816 +Node: Running gawk73250 +Node: One-shot74440 +Node: Read Terminal75665 +Ref: Read Terminal-Footnote-177315 +Ref: Read Terminal-Footnote-277591 +Node: Long77762 +Node: Executable Scripts79138 +Ref: Executable Scripts-Footnote-180971 +Ref: Executable Scripts-Footnote-281073 +Node: Comments81620 +Node: Quoting84093 +Node: DOS Quoting89409 +Node: Sample Data Files90084 +Node: Very Simple92599 +Node: Two Rules97372 +Node: More Complex99266 +Ref: More Complex-Footnote-1102198 +Node: Statements/Lines102283 +Ref: Statements/Lines-Footnote-1106739 +Node: Other Features107004 +Node: When107932 +Node: Intro Summary110102 +Node: Invoking Gawk110868 +Node: Command Line112383 +Node: Options113174 +Ref: Options-Footnote-1129003 +Node: Other Arguments129028 +Node: Naming Standard Input131690 +Node: Environment Variables132784 +Node: AWKPATH Variable133342 +Ref: AWKPATH Variable-Footnote-1136214 +Ref: AWKPATH Variable-Footnote-2136259 +Node: AWKLIBPATH Variable136519 +Node: Other Environment Variables137278 +Node: Exit Status140933 +Node: Include Files141608 +Node: Loading Shared Libraries145186 +Node: Obsolete146570 +Node: Undocumented147267 +Node: Invoking Summary147534 +Node: Regexp149114 +Node: Regexp Usage150564 +Node: Escape Sequences152597 +Node: Regexp Operators158264 +Ref: Regexp Operators-Footnote-1165744 +Ref: Regexp Operators-Footnote-2165891 +Node: Bracket Expressions165989 +Ref: table-char-classes167879 +Node: GNU Regexp Operators170819 +Node: Case-sensitivity174542 +Ref: Case-sensitivity-Footnote-1177434 +Ref: Case-sensitivity-Footnote-2177669 +Node: Leftmost Longest177777 +Node: Computed Regexps178978 +Node: Regexp Summary182350 +Node: Reading Files183821 +Node: Records185913 +Node: awk split records186656 +Node: gawk split records191514 +Ref: gawk split records-Footnote-1196035 +Node: Fields196072 +Ref: Fields-Footnote-1199036 +Node: Nonconstant Fields199122 +Ref: Nonconstant Fields-Footnote-1201352 +Node: Changing Fields201554 +Node: Field Separators207508 +Node: Default Field Splitting210210 +Node: Regexp Field Splitting211327 +Node: Single Character Fields214668 +Node: Command Line Field Separator215727 +Node: Full Line Fields219069 +Ref: Full Line Fields-Footnote-1219577 +Node: Field Splitting Summary219623 +Ref: Field Splitting Summary-Footnote-1222722 +Node: Constant Size222823 +Node: Splitting By Content227430 +Ref: Splitting By Content-Footnote-1231180 +Node: Multiple Line231220 +Ref: Multiple Line-Footnote-1237076 +Node: Getline237255 +Node: Plain Getline239471 +Node: Getline/Variable241566 +Node: Getline/File242713 +Node: Getline/Variable/File244097 +Ref: Getline/Variable/File-Footnote-1245696 +Node: Getline/Pipe245783 +Node: Getline/Variable/Pipe248482 +Node: Getline/Coprocess249589 +Node: Getline/Variable/Coprocess250841 +Node: Getline Notes251578 +Node: Getline Summary254382 +Ref: table-getline-variants254790 +Node: Read Timeout255702 +Ref: Read Timeout-Footnote-1259529 +Node: Command line directories259587 +Node: Input Summary260491 +Node: Input Exercises263628 +Node: Printing264361 +Node: Print266083 +Node: Print Examples267424 +Node: Output Separators270203 +Node: OFMT272219 +Node: Printf273577 +Node: Basic Printf274483 +Node: Control Letters276022 +Node: Format Modifiers280013 +Node: Printf Examples286040 +Node: Redirection288504 +Node: Special Files295476 +Node: Special FD296007 +Ref: Special FD-Footnote-1299604 +Node: Special Network299678 +Node: Special Caveats300528 +Node: Close Files And Pipes301324 +Ref: Close Files And Pipes-Footnote-1308485 +Ref: Close Files And Pipes-Footnote-2308633 +Node: Output Summary308783 +Node: Output exercises309780 +Node: Expressions310460 +Node: Values311645 +Node: Constants312321 +Node: Scalar Constants313001 +Ref: Scalar Constants-Footnote-1313860 +Node: Nondecimal-numbers314110 +Node: Regexp Constants317110 +Node: Using Constant Regexps317585 +Node: Variables320655 +Node: Using Variables321310 +Node: Assignment Options323034 +Node: Conversion324909 +Node: Strings And Numbers325433 +Ref: Strings And Numbers-Footnote-1328495 +Node: Locale influences conversions328604 +Ref: table-locale-affects331321 +Node: All Operators331909 +Node: Arithmetic Ops332539 +Node: Concatenation335044 +Ref: Concatenation-Footnote-1337863 +Node: Assignment Ops337983 +Ref: table-assign-ops342966 +Node: Increment Ops344283 +Node: Truth Values and Conditions347721 +Node: Truth Values348804 +Node: Typing and Comparison349853 +Node: Variable Typing350646 +Node: Comparison Operators354296 +Ref: table-relational-ops354706 +Node: POSIX String Comparison358256 +Ref: POSIX String Comparison-Footnote-1359340 +Node: Boolean Ops359478 +Ref: Boolean Ops-Footnote-1363548 +Node: Conditional Exp363639 +Node: Function Calls365366 +Node: Precedence369246 +Node: Locales372915 +Node: Expressions Summary374546 +Node: Patterns and Actions377087 +Node: Pattern Overview378203 +Node: Regexp Patterns379880 +Node: Expression Patterns380423 +Node: Ranges384204 +Node: BEGIN/END387310 +Node: Using BEGIN/END388072 +Ref: Using BEGIN/END-Footnote-1390808 +Node: I/O And BEGIN/END390914 +Node: BEGINFILE/ENDFILE393199 +Node: Empty396130 +Node: Using Shell Variables396447 +Node: Action Overview398730 +Node: Statements401057 +Node: If Statement402905 +Node: While Statement404403 +Node: Do Statement406447 +Node: For Statement407603 +Node: Switch Statement410755 +Node: Break Statement412858 +Node: Continue Statement414913 +Node: Next Statement416706 +Node: Nextfile Statement419096 +Node: Exit Statement421751 +Node: Built-in Variables424155 +Node: User-modified425282 +Ref: User-modified-Footnote-1432971 +Node: Auto-set433033 +Ref: Auto-set-Footnote-1445615 +Ref: Auto-set-Footnote-2445820 +Node: ARGC and ARGV445876 +Node: Pattern Action Summary449730 +Node: Arrays451953 +Node: Array Basics453502 +Node: Array Intro454328 +Ref: figure-array-elements456301 +Node: Reference to Elements458708 +Node: Assigning Elements460981 +Node: Array Example461472 +Node: Scanning an Array463204 +Node: Controlling Scanning466219 +Ref: Controlling Scanning-Footnote-1471392 +Node: Delete471708 +Ref: Delete-Footnote-1474473 +Node: Numeric Array Subscripts474530 +Node: Uninitialized Subscripts476713 +Node: Multidimensional478338 +Node: Multiscanning481431 +Node: Arrays of Arrays483020 +Node: Arrays Summary487683 +Node: Functions489788 +Node: Built-in490661 +Node: Calling Built-in491739 +Node: Numeric Functions493727 +Ref: Numeric Functions-Footnote-1497669 +Ref: Numeric Functions-Footnote-2498026 +Ref: Numeric Functions-Footnote-3498074 +Node: String Functions498343 +Ref: String Functions-Footnote-1521354 +Ref: String Functions-Footnote-2521483 +Ref: String Functions-Footnote-3521731 +Node: Gory Details521818 +Ref: table-sub-escapes523487 +Ref: table-sub-posix-92524841 +Ref: table-sub-proposed526192 +Ref: table-posix-sub527546 +Ref: table-gensub-escapes529091 +Ref: Gory Details-Footnote-1530267 +Ref: Gory Details-Footnote-2530318 +Node: I/O Functions530469 +Ref: I/O Functions-Footnote-1537592 +Node: Time Functions537739 +Ref: Time Functions-Footnote-1548203 +Ref: Time Functions-Footnote-2548271 +Ref: Time Functions-Footnote-3548429 +Ref: Time Functions-Footnote-4548540 +Ref: Time Functions-Footnote-5548652 +Ref: Time Functions-Footnote-6548879 +Node: Bitwise Functions549145 +Ref: table-bitwise-ops549707 +Ref: Bitwise Functions-Footnote-1553952 +Node: Type Functions554136 +Node: I18N Functions555278 +Node: User-defined556923 +Node: Definition Syntax557727 +Ref: Definition Syntax-Footnote-1562906 +Node: Function Example562975 +Ref: Function Example-Footnote-1565619 +Node: Function Caveats565641 +Node: Calling A Function566159 +Node: Variable Scope567114 +Node: Pass By Value/Reference570102 +Node: Return Statement573610 +Node: Dynamic Typing576594 +Node: Indirect Calls577523 +Node: Functions Summary587236 +Node: Library Functions589775 +Ref: Library Functions-Footnote-1593393 +Ref: Library Functions-Footnote-2593536 +Node: Library Names593707 +Ref: Library Names-Footnote-1597180 +Ref: Library Names-Footnote-2597400 +Node: General Functions597486 +Node: Strtonum Function598514 +Node: Assert Function601294 +Node: Round Function604620 +Node: Cliff Random Function606161 +Node: Ordinal Functions607177 +Ref: Ordinal Functions-Footnote-1610254 +Ref: Ordinal Functions-Footnote-2610506 +Node: Join Function610717 +Ref: Join Function-Footnote-1612488 +Node: Getlocaltime Function612688 +Node: Readfile Function616424 +Node: Data File Management618263 +Node: Filetrans Function618895 +Node: Rewind Function622964 +Node: File Checking624522 +Ref: File Checking-Footnote-1625654 +Node: Empty Files625855 +Node: Ignoring Assigns627834 +Node: Getopt Function629388 +Ref: Getopt Function-Footnote-1640691 +Node: Passwd Functions640894 +Ref: Passwd Functions-Footnote-1649873 +Node: Group Functions649961 +Ref: Group Functions-Footnote-1657902 +Node: Walking Arrays658115 +Node: Library Functions Summary659718 +Node: Library exercises661106 +Node: Sample Programs662386 +Node: Running Examples663156 +Node: Clones663884 +Node: Cut Program665108 +Node: Egrep Program674976 +Ref: Egrep Program-Footnote-1682947 +Node: Id Program683057 +Node: Split Program686721 +Ref: Split Program-Footnote-1690259 +Node: Tee Program690387 +Node: Uniq Program693194 +Node: Wc Program700624 +Ref: Wc Program-Footnote-1704889 +Node: Miscellaneous Programs704981 +Node: Dupword Program706194 +Node: Alarm Program708225 +Node: Translate Program713039 +Ref: Translate Program-Footnote-1717430 +Ref: Translate Program-Footnote-2717700 +Node: Labels Program717834 +Ref: Labels Program-Footnote-1721205 +Node: Word Sorting721289 +Node: History Sorting725332 +Node: Extract Program727168 +Node: Simple Sed734704 +Node: Igawk Program737766 +Ref: Igawk Program-Footnote-1752077 +Ref: Igawk Program-Footnote-2752278 +Node: Anagram Program752416 +Node: Signature Program755484 +Node: Programs Summary756731 +Node: Programs Exercises757946 +Node: Advanced Features761597 +Node: Nondecimal Data763545 +Node: Array Sorting765122 +Node: Controlling Array Traversal765819 +Node: Array Sorting Functions774099 +Ref: Array Sorting Functions-Footnote-1778006 +Node: Two-way I/O778200 +Ref: Two-way I/O-Footnote-1783716 +Node: TCP/IP Networking783798 +Node: Profiling786642 +Node: Advanced Features Summary794184 +Node: Internationalization796048 +Node: I18N and L10N797528 +Node: Explaining gettext798214 +Ref: Explaining gettext-Footnote-1803354 +Ref: Explaining gettext-Footnote-2803538 +Node: Programmer i18n803703 +Node: Translator i18n807928 +Node: String Extraction808722 +Ref: String Extraction-Footnote-1809683 +Node: Printf Ordering809769 +Ref: Printf Ordering-Footnote-1812551 +Node: I18N Portability812615 +Ref: I18N Portability-Footnote-1815064 +Node: I18N Example815127 +Ref: I18N Example-Footnote-1817849 +Node: Gawk I18N817921 +Node: I18N Summary818559 +Node: Debugger819898 +Node: Debugging820920 +Node: Debugging Concepts821361 +Node: Debugging Terms823217 +Node: Awk Debugging825814 +Node: Sample Debugging Session826706 +Node: Debugger Invocation827226 +Node: Finding The Bug828559 +Node: List of Debugger Commands835041 +Node: Breakpoint Control836373 +Node: Debugger Execution Control840037 +Node: Viewing And Changing Data843397 +Node: Execution Stack846755 +Node: Debugger Info848268 +Node: Miscellaneous Debugger Commands852262 +Node: Readline Support857446 +Node: Limitations858338 +Node: Debugging Summary860612 +Node: Arbitrary Precision Arithmetic861776 +Node: Computer Arithmetic863105 +Ref: Computer Arithmetic-Footnote-1867492 +Node: Math Definitions867549 +Ref: table-ieee-formats870433 +Node: MPFR features870937 +Node: FP Math Caution872579 +Ref: FP Math Caution-Footnote-1873620 +Node: Inexactness of computations873989 +Node: Inexact representation874937 +Node: Comparing FP Values876292 +Node: Errors accumulate877256 +Node: Getting Accuracy878689 +Node: Try To Round881348 +Node: Setting precision882247 +Ref: table-predefined-precision-strings882929 +Node: Setting the rounding mode884722 +Ref: table-gawk-rounding-modes885086 +Ref: Setting the rounding mode-Footnote-1888540 +Node: Arbitrary Precision Integers888719 +Ref: Arbitrary Precision Integers-Footnote-1891722 +Node: POSIX Floating Point Problems891871 +Ref: POSIX Floating Point Problems-Footnote-1895747 +Node: Floating point summary895785 +Node: Dynamic Extensions898002 +Node: Extension Intro899554 +Node: Plugin License900819 +Node: Extension Mechanism Outline901504 +Ref: figure-load-extension901928 +Ref: figure-load-new-function903413 +Ref: figure-call-new-function904415 +Node: Extension API Description906399 +Node: Extension API Functions Introduction907849 +Node: General Data Types912714 +Ref: General Data Types-Footnote-1918407 +Node: Requesting Values918706 +Ref: table-value-types-returned919443 +Node: Memory Allocation Functions920401 +Ref: Memory Allocation Functions-Footnote-1923148 +Node: Constructor Functions923244 +Node: Registration Functions925002 +Node: Extension Functions925687 +Node: Exit Callback Functions927989 +Node: Extension Version String929238 +Node: Input Parsers929888 +Node: Output Wrappers939702 +Node: Two-way processors944218 +Node: Printing Messages946422 +Ref: Printing Messages-Footnote-1947499 +Node: Updating `ERRNO'947651 +Node: Accessing Parameters948390 +Node: Symbol Table Access949620 +Node: Symbol table by name950134 +Node: Symbol table by cookie952110 +Ref: Symbol table by cookie-Footnote-1956243 +Node: Cached values956306 +Ref: Cached values-Footnote-1959810 +Node: Array Manipulation959901 +Ref: Array Manipulation-Footnote-1960999 +Node: Array Data Types961038 +Ref: Array Data Types-Footnote-1963741 +Node: Array Functions963833 +Node: Flattening Arrays967707 +Node: Creating Arrays974559 +Node: Extension API Variables979290 +Node: Extension Versioning979926 +Node: Extension API Informational Variables981827 +Node: Extension API Boilerplate982913 +Node: Finding Extensions986717 +Node: Extension Example987277 +Node: Internal File Description988007 +Node: Internal File Ops992098 +Ref: Internal File Ops-Footnote-11003530 +Node: Using Internal File Ops1003670 +Ref: Using Internal File Ops-Footnote-11006017 +Node: Extension Samples1006285 +Node: Extension Sample File Functions1007809 +Node: Extension Sample Fnmatch1015377 +Node: Extension Sample Fork1016859 +Node: Extension Sample Inplace1018072 +Node: Extension Sample Ord1019747 +Node: Extension Sample Readdir1020583 +Ref: table-readdir-file-types1021439 +Node: Extension Sample Revout1022238 +Node: Extension Sample Rev2way1022829 +Node: Extension Sample Read write array1023570 +Node: Extension Sample Readfile1025449 +Node: Extension Sample API Tests1026549 +Node: Extension Sample Time1027074 +Node: gawkextlib1028389 +Node: Extension summary1031202 +Node: Extension Exercises1034895 +Node: Language History1035617 +Node: V7/SVR3.11037260 +Node: SVR41039580 +Node: POSIX1041022 +Node: BTL1042408 +Node: POSIX/GNU1043142 +Node: Feature History1048885 +Node: Common Extensions1062015 +Node: Ranges and Locales1063327 +Ref: Ranges and Locales-Footnote-11067944 +Ref: Ranges and Locales-Footnote-21067971 +Ref: Ranges and Locales-Footnote-31068205 +Node: Contributors1068426 +Node: History summary1073851 +Node: Installation1075220 +Node: Gawk Distribution1076171 +Node: Getting1076655 +Node: Extracting1077479 +Node: Distribution contents1079121 +Node: Unix Installation1084838 +Node: Quick Installation1085455 +Node: Additional Configuration Options1087897 +Node: Configuration Philosophy1089635 +Node: Non-Unix Installation1091986 +Node: PC Installation1092444 +Node: PC Binary Installation1093755 +Node: PC Compiling1095603 +Ref: PC Compiling-Footnote-11098602 +Node: PC Testing1098707 +Node: PC Using1099883 +Node: Cygwin1104041 +Node: MSYS1104850 +Node: VMS Installation1105364 +Node: VMS Compilation1106160 +Ref: VMS Compilation-Footnote-11107382 +Node: VMS Dynamic Extensions1107440 +Node: VMS Installation Details1108813 +Node: VMS Running1111065 +Node: VMS GNV1113899 +Node: VMS Old Gawk1114622 +Node: Bugs1115092 +Node: Other Versions1119096 +Node: Installation summary1125351 +Node: Notes1126407 +Node: Compatibility Mode1127272 +Node: Additions1128054 +Node: Accessing The Source1128979 +Node: Adding Code1130415 +Node: New Ports1136593 +Node: Derived Files1141074 +Ref: Derived Files-Footnote-11146155 +Ref: Derived Files-Footnote-21146189 +Ref: Derived Files-Footnote-31146785 +Node: Future Extensions1146899 +Node: Implementation Limitations1147505 +Node: Extension Design1148753 +Node: Old Extension Problems1149907 +Ref: Old Extension Problems-Footnote-11151424 +Node: Extension New Mechanism Goals1151481 +Ref: Extension New Mechanism Goals-Footnote-11154841 +Node: Extension Other Design Decisions1155030 +Node: Extension Future Growth1157136 +Node: Old Extension Mechanism1157972 +Node: Notes summary1159734 +Node: Basic Concepts1160920 +Node: Basic High Level1161601 +Ref: figure-general-flow1161873 +Ref: figure-process-flow1162472 +Ref: Basic High Level-Footnote-11165701 +Node: Basic Data Typing1165886 +Node: Glossary1169214 +Node: Copying1194366 +Node: GNU Free Documentation License1231922 +Node: Index1257058 End Tag Table |