diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2014-06-12 22:01:31 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2014-06-12 22:01:31 +0300 |
commit | 4a42ca2e31b40f0d46634f9ab77d82e4fe727c22 (patch) | |
tree | 7370ab418318f93b6d101364e902f469f33a656f /doc/gawk.info | |
parent | b6c937359a778e40a5d532c2a3aed8b21b89b3be (diff) | |
download | egawk-4a42ca2e31b40f0d46634f9ab77d82e4fe727c22.tar.gz egawk-4a42ca2e31b40f0d46634f9ab77d82e4fe727c22.tar.bz2 egawk-4a42ca2e31b40f0d46634f9ab77d82e4fe727c22.zip |
And more summaries in the doc.
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 648 |
1 files changed, 396 insertions, 252 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index ff50955b..9033128e 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -14014,9 +14014,9 @@ File: gawk.info, Node: Functions Summary, Prev: Indirect Calls, Up: Functions It is more straightforward in `gawk''s `gensub()' function, but that function still requires care in its use. - * User-defined functions provide important capabilities but come - with some syntactic inelegancies. In a function call, there cannot - be any space between the function name and the opening left + * User-defined functions provide important capabilities but come with + some syntactic inelegancies. In a function call, there cannot be + any space between the function name and the opening left parethesis of the argument list. Also, there is no provision for local variables, so the convention is to add extra parameters, and to separate them visually from the real parameters by extra @@ -14036,8 +14036,8 @@ File: gawk.info, Node: Functions Summary, Prev: Indirect Calls, Up: Functions scalar values may be returned by a function. * If a variable that has never been used is passed to a user-defined - function, how that function treats the variable can set its - nature: either scalar or array. + function, how that function treats the variable can set its nature: + either scalar or array. * `gawk' provides indirect function calls using a special syntax. By setting a variable to the name of a user-defined function, you @@ -15953,6 +15953,7 @@ Library Functions::. * Running Examples:: How to run these examples. * Clones:: Clones of common utilities. * Miscellaneous Programs:: Some interesting `awk' programs. +* Programs Summary:: Summary of programs. File: gawk.info, Node: Running Examples, Next: Clones, Up: Sample Programs @@ -17168,7 +17169,7 @@ has already been reset by the time `endfile()' is called. characters, not bytes. -File: gawk.info, Node: Miscellaneous Programs, Prev: Clones, Up: Sample Programs +File: gawk.info, Node: Miscellaneous Programs, Next: Programs Summary, Prev: Clones, Up: Sample Programs 11.3 A Grab Bag of `awk' Programs ================================= @@ -18564,6 +18565,36 @@ truly desperate to understand it, see Chris Johansen's explanation, which is embedded in the Texinfo source file for this Info file.) +File: gawk.info, Node: Programs Summary, Prev: Miscellaneous Programs, Up: Sample Programs + +11.4 Summary +============ + + * The functions provided in this major node and the previous one + continue on the theme that reading programs is an excellent way to + learn Good Programming. + + * Using `#!' to make `awk' programs directly runnable makes them + easier to use. Otherwise, invoke the program using `awk -f ...'. + + * Reimplementing standard POSIX programs in `awk' is a pleasant + exercise; `awk''s expressive power lets you write such programs in + relatively few lines of code, yet they are functionally complete + and usable. + + * One of standard `awk''s weaknesses is working with individual + characters. The ability to use `split()' with the empty string as + the separator can considerably simplify such tasks. + + * The library functions from *note Library Functions::, proved their + usefulness for a number of real (if small) programs. + + * Besides reinventing POSIX wheels, other programs solved a + selection of interesting problems, such as finding duplicates + words in text, printing mailing labels, and finding anagrams. + + + File: gawk.info, Node: Advanced Features, Next: Internationalization, Prev: Sample Programs, Up: Top 12 Advanced Features of `gawk' @@ -18607,6 +18638,7 @@ own: * Two-way I/O:: Two-way communications with another process. * TCP/IP Networking:: Using `gawk' for network programming. * Profiling:: Profiling your `awk' programs. +* Advanced Features Summary:: Summary of advanced features. File: gawk.info, Node: Nondecimal Data, Next: Array Sorting, Up: Advanced Features @@ -19209,7 +19241,7 @@ much more complete introduction and discussion, as well as extensive examples. -File: gawk.info, Node: Profiling, Prev: TCP/IP Networking, Up: Advanced Features +File: gawk.info, Node: Profiling, Next: Advanced Features Summary, Prev: TCP/IP Networking, Up: Advanced Features 12.5 Profiling Your `awk' Programs ================================== @@ -19438,6 +19470,48 @@ without any execution counts. will change in the next major release. +File: gawk.info, Node: Advanced Features Summary, Prev: Profiling, Up: Advanced Features + +12.6 Summary +============ + + * The `--non-decimal-data' option causes `gawk' to treat octal- and + hexadecimal-looking input data as octal and hexadecimal. This + option should be used with caution or not at all; use of + `strtonum()' is preferable. + + * You can take over complete control of sorting in `for (INDX in + ARRAY)' array traversal by setting `PROCINFO["sorted_in"]' to the + name of a user-defined function that does the comparison of array + elements based on index and value. + + * Similarly, you can supply the name of a user-defined comparison + function as the third argument to either `asort()' or `asorti()' + to control how those functions sort arrays. Or you may provide one + of the predefined control strings that work for + `PROCINFO["sorted_in"]'. + + * You can use the `|&' operator to create a two-way pipe to a + co-process. You read from the co-process with `getline' and write + to it with `print' or `printf'. Use `close()' to close off the + co-process completely, or optionally, close off one side of the + two-way communications. + + * By using special "file names" with the `|&' operator, you can open + a TCP/IP (or UDP/IP) connection to remote hosts in the Internet. + `gawk' supports both IPv4 an IPv6. + + * You can generate statement count profiles of your program. This + can help you determine which parts of your program may be taking + the most time and let you tune them more easily. Sending the + `USR1' signal while profiling causes `gawk' to dump the profile + and keep going, including a function call stack. + + * You can also just "pretty print" the program. This currently also + runs the program, but that will change in the next major release. + + + File: gawk.info, Node: Internationalization, Next: Debugger, Prev: Advanced Features, Up: Top 13 Internationalization with `gawk' @@ -19467,6 +19541,7 @@ requirement. * Translator i18n:: Features for the translator. * I18N Example:: A simple i18n example. * Gawk I18N:: `gawk' is also internationalized. +* I18N Summary:: Summary of I18N stuff. File: gawk.info, Node: I18N and L10N, Next: Explaining gettext, Up: Internationalization @@ -20005,7 +20080,7 @@ and `bindtextdomain()' (*note I18N Portability::) are in a file named (1) Perhaps it would be better if it were called "Hippy." Ah, well. -File: gawk.info, Node: Gawk I18N, Prev: I18N Example, Up: Internationalization +File: gawk.info, Node: Gawk I18N, Next: I18N Summary, Prev: I18N Example, Up: Internationalization 13.6 `gawk' Can Speak Your Language =================================== @@ -20020,6 +20095,39 @@ writing, the latest version of GNU `gettext' is version 0.19.1 usage messages, warnings, and fatal errors in the local language. +File: gawk.info, Node: I18N Summary, Prev: Gawk I18N, Up: Internationalization + +13.7 Summary +============ + + * Internationalization means writing a program such that it can use + multiple languages without requiring source-code changes. + Localization means providing the data necessary for an + internationalized program to work in a particular language. + + * `gawk' uses GNU `gettext' to let you internationalize and localize + `awk' programs. A program's text domain identifies the program + for grouping all messages and other data together. + + * You mark a program's strings for translation by preceding them with + an underscore. Once that is done, the strings are extracted into a + `.pot' file. This file is copied for each langauge into a `.po' + file, and the `.po' files are compiled into `.gmo' files for use + at runtime. + + * You can use position specifications with `sprintf()' and `printf' + to rearrange the placement of argument values in formatted strings + and output. This is useful for the translations of format control + strings. + + * The internationalization features have been designed so that they + can be easily worked around in a standard `awk'. + + * `gawk' itself has been internationalized and ships with a number + of translations for its messages. + + + File: gawk.info, Node: Debugger, Next: Arbitrary Precision Arithmetic, Prev: Internationalization, Up: Top 14 Debugging `awk' Programs @@ -20042,6 +20150,7 @@ program is easy. * List of Debugger Commands:: Main debugger commands. * Readline Support:: Readline support. * Limitations:: Limitations and future plans. +* Debugging Summary:: Debugging summary. File: gawk.info, Node: Debugging, Next: Sample Debugging Session, Up: Debugger @@ -21020,7 +21129,7 @@ Variable name completion -File: gawk.info, Node: Limitations, Prev: Readline Support, Up: Debugger +File: gawk.info, Node: Limitations, Next: Debugging Summary, Prev: Readline Support, Up: Debugger 14.5 Limitations and Future Plans ================================= @@ -21067,6 +21176,35 @@ features may be added, and of course feel free to try to add them yourself! +File: gawk.info, Node: Debugging Summary, Prev: Limitations, Up: Debugger + +14.6 Summary +============ + + * Programs rarely work correctly the first time. Finding bugs is + "debugging" and a program that helps you find bugs is a + "debugger". `gawk' has a built-in debugger that works very + similarly to the GNU Debugger, GDB. + + * Debuggers let you step through your program one statement at a + time, examine and change variable and array values, and do a + number of other things that let understand what your program is + actually doing (as opposed to what it is supposed to do). + + * Like most debuggers, the `gawk' debugger works in terms of stack + frames, and lets you set both breakpoints (stop at a point in the + code) and watchpoints (stop when a data value changes). + + * The debugger command set is fairly complete, providing control over + breakpoints, execution, viewing and changing data, working with + the stack, getting information, and other tasks. + + * If the `readline' library is available when `gawk' is compiled, it + is used by the debugger to provide command-line history and + editing. + + + File: gawk.info, Node: Arbitrary Precision Arithmetic, Next: Dynamic Extensions, Prev: Debugger, Up: Top 15 Arithmetic and Arbitrary Precision Arithmetic with `gawk' @@ -31784,6 +31922,7 @@ Index * endgrent() user-defined function: Group Functions. (line 216) * endpwent() function (C library): Passwd Functions. (line 210) * endpwent() user-defined function: Passwd Functions. (line 213) +* English, Steve: Advanced Features. (line 6) * ENVIRON array: Auto-set. (line 59) * environment variables used by gawk: Environment Variables. (line 6) @@ -32444,6 +32583,7 @@ Index * l debugger command (alias for list): Miscellaneous Debugger Commands. (line 72) * labels.awk program: Labels Program. (line 51) +* Langston, Peter: Advanced Features. (line 6) * languages, data-driven: Basic High Level. (line 85) * Laurie, Dirk: Changing Precision. (line 6) * LC_ALL locale category: Explaining gettext. (line 121) @@ -33979,248 +34119,252 @@ Ref: Group Functions-Footnote-1653771 Node: Walking Arrays653984 Node: Library Functions Summary656154 Node: Sample Programs657516 -Node: Running Examples658190 -Node: Clones658918 -Node: Cut Program660142 -Node: Egrep Program670003 -Ref: Egrep Program-Footnote-1677932 -Node: Id Program678042 -Node: Split Program681706 -Ref: Split Program-Footnote-1685237 -Node: Tee Program685365 -Node: Uniq Program688172 -Node: Wc Program695602 -Ref: Wc Program-Footnote-1699870 -Ref: Wc Program-Footnote-2700070 -Node: Miscellaneous Programs700162 -Node: Dupword Program701350 -Node: Alarm Program703381 -Node: Translate Program708195 -Ref: Translate Program-Footnote-1712586 -Ref: Translate Program-Footnote-2712856 -Node: Labels Program712990 -Ref: Labels Program-Footnote-1716361 -Node: Word Sorting716445 -Node: History Sorting720488 -Node: Extract Program722324 -Ref: Extract Program-Footnote-1729899 -Node: Simple Sed730028 -Node: Igawk Program733090 -Ref: Igawk Program-Footnote-1748266 -Ref: Igawk Program-Footnote-2748467 -Node: Anagram Program748605 -Node: Signature Program751673 -Node: Advanced Features752920 -Node: Nondecimal Data754806 -Node: Array Sorting756383 -Node: Controlling Array Traversal757080 -Node: Array Sorting Functions765360 -Ref: Array Sorting Functions-Footnote-1769267 -Node: Two-way I/O769461 -Ref: Two-way I/O-Footnote-1774977 -Node: TCP/IP Networking775059 -Node: Profiling777903 -Node: Internationalization785411 -Node: I18N and L10N786836 -Node: Explaining gettext787522 -Ref: Explaining gettext-Footnote-1792662 -Ref: Explaining gettext-Footnote-2792846 -Node: Programmer i18n793011 -Node: Translator i18n797236 -Node: String Extraction798030 -Ref: String Extraction-Footnote-1798991 -Node: Printf Ordering799077 -Ref: Printf Ordering-Footnote-1801859 -Node: I18N Portability801923 -Ref: I18N Portability-Footnote-1804372 -Node: I18N Example804435 -Ref: I18N Example-Footnote-1807157 -Node: Gawk I18N807229 -Node: Debugger807846 -Node: Debugging808817 -Node: Debugging Concepts809258 -Node: Debugging Terms811114 -Node: Awk Debugging813711 -Node: Sample Debugging Session814603 -Node: Debugger Invocation815123 -Node: Finding The Bug816456 -Node: List of Debugger Commands822938 -Node: Breakpoint Control824270 -Node: Debugger Execution Control827934 -Node: Viewing And Changing Data831294 -Node: Execution Stack834652 -Node: Debugger Info836165 -Node: Miscellaneous Debugger Commands840159 -Node: Readline Support845343 -Node: Limitations846235 -Node: Arbitrary Precision Arithmetic848483 -Ref: Arbitrary Precision Arithmetic-Footnote-1850132 -Node: General Arithmetic850280 -Node: Floating Point Issues852000 -Node: String Conversion Precision852881 -Ref: String Conversion Precision-Footnote-1854586 -Node: Unexpected Results854695 -Node: POSIX Floating Point Problems856848 -Ref: POSIX Floating Point Problems-Footnote-1860669 -Node: Integer Programming860707 -Node: Floating-point Programming862518 -Ref: Floating-point Programming-Footnote-1868846 -Ref: Floating-point Programming-Footnote-2869116 -Node: Floating-point Representation869380 -Node: Floating-point Context870545 -Ref: table-ieee-formats871384 -Node: Rounding Mode872768 -Ref: table-rounding-modes873247 -Ref: Rounding Mode-Footnote-1876262 -Node: Gawk and MPFR876441 -Node: Arbitrary Precision Floats877850 -Ref: Arbitrary Precision Floats-Footnote-1880293 -Node: Setting Precision880614 -Ref: table-predefined-precision-strings881298 -Node: Setting Rounding Mode883443 -Ref: table-gawk-rounding-modes883847 -Node: Floating-point Constants885034 -Node: Changing Precision886486 -Ref: Changing Precision-Footnote-1887878 -Node: Exact Arithmetic888052 -Node: Arbitrary Precision Integers891186 -Ref: Arbitrary Precision Integers-Footnote-1894201 -Node: Dynamic Extensions894348 -Node: Extension Intro895806 -Node: Plugin License897071 -Node: Extension Mechanism Outline897756 -Ref: figure-load-extension898180 -Ref: figure-load-new-function899665 -Ref: figure-call-new-function900667 -Node: Extension API Description902651 -Node: Extension API Functions Introduction904101 -Node: General Data Types908967 -Ref: General Data Types-Footnote-1914660 -Node: Requesting Values914959 -Ref: table-value-types-returned915696 -Node: Memory Allocation Functions916654 -Ref: Memory Allocation Functions-Footnote-1919401 -Node: Constructor Functions919497 -Node: Registration Functions921255 -Node: Extension Functions921940 -Node: Exit Callback Functions924242 -Node: Extension Version String925492 -Node: Input Parsers926142 -Node: Output Wrappers935945 -Node: Two-way processors940461 -Node: Printing Messages942665 -Ref: Printing Messages-Footnote-1943742 -Node: Updating `ERRNO'943894 -Node: Accessing Parameters944633 -Node: Symbol Table Access945863 -Node: Symbol table by name946377 -Node: Symbol table by cookie948353 -Ref: Symbol table by cookie-Footnote-1952486 -Node: Cached values952549 -Ref: Cached values-Footnote-1956054 -Node: Array Manipulation956145 -Ref: Array Manipulation-Footnote-1957243 -Node: Array Data Types957282 -Ref: Array Data Types-Footnote-1959985 -Node: Array Functions960077 -Node: Flattening Arrays963951 -Node: Creating Arrays970803 -Node: Extension API Variables975534 -Node: Extension Versioning976170 -Node: Extension API Informational Variables978071 -Node: Extension API Boilerplate979157 -Node: Finding Extensions982961 -Node: Extension Example983521 -Node: Internal File Description984251 -Node: Internal File Ops988342 -Ref: Internal File Ops-Footnote-1999888 -Node: Using Internal File Ops1000028 -Ref: Using Internal File Ops-Footnote-11002375 -Node: Extension Samples1002643 -Node: Extension Sample File Functions1004167 -Node: Extension Sample Fnmatch1011735 -Node: Extension Sample Fork1013202 -Node: Extension Sample Inplace1014415 -Node: Extension Sample Ord1016181 -Node: Extension Sample Readdir1017017 -Ref: table-readdir-file-types1017866 -Node: Extension Sample Revout1018665 -Node: Extension Sample Rev2way1019256 -Node: Extension Sample Read write array1019997 -Node: Extension Sample Readfile1021876 -Node: Extension Sample API Tests1022976 -Node: Extension Sample Time1023501 -Node: gawkextlib1024816 -Node: Language History1027603 -Node: V7/SVR3.11029197 -Node: SVR41031517 -Node: POSIX1032959 -Node: BTL1034345 -Node: POSIX/GNU1035079 -Node: Feature History1040678 -Node: Common Extensions1053790 -Node: Ranges and Locales1055102 -Ref: Ranges and Locales-Footnote-11059719 -Ref: Ranges and Locales-Footnote-21059746 -Ref: Ranges and Locales-Footnote-31059980 -Node: Contributors1060201 -Node: Installation1065639 -Node: Gawk Distribution1066533 -Node: Getting1067017 -Node: Extracting1067843 -Node: Distribution contents1069485 -Node: Unix Installation1075202 -Node: Quick Installation1075819 -Node: Additional Configuration Options1078261 -Node: Configuration Philosophy1079999 -Node: Non-Unix Installation1082350 -Node: PC Installation1082808 -Node: PC Binary Installation1084119 -Node: PC Compiling1085967 -Ref: PC Compiling-Footnote-11088966 -Node: PC Testing1089071 -Node: PC Using1090247 -Node: Cygwin1094405 -Node: MSYS1095214 -Node: VMS Installation1095728 -Node: VMS Compilation1096524 -Ref: VMS Compilation-Footnote-11097739 -Node: VMS Dynamic Extensions1097797 -Node: VMS Installation Details1099170 -Node: VMS Running1101416 -Node: VMS GNV1104250 -Node: VMS Old Gawk1104973 -Node: Bugs1105443 -Node: Other Versions1109447 -Node: Notes1115672 -Node: Compatibility Mode1116472 -Node: Additions1117254 -Node: Accessing The Source1118179 -Node: Adding Code1119615 -Node: New Ports1125793 -Node: Derived Files1130274 -Ref: Derived Files-Footnote-11135355 -Ref: Derived Files-Footnote-21135389 -Ref: Derived Files-Footnote-31135985 -Node: Future Extensions1136099 -Node: Implementation Limitations1136705 -Node: Extension Design1137953 -Node: Old Extension Problems1139107 -Ref: Old Extension Problems-Footnote-11140624 -Node: Extension New Mechanism Goals1140681 -Ref: Extension New Mechanism Goals-Footnote-11144042 -Node: Extension Other Design Decisions1144231 -Node: Extension Future Growth1146337 -Node: Old Extension Mechanism1147173 -Node: Basic Concepts1148913 -Node: Basic High Level1149594 -Ref: figure-general-flow1149866 -Ref: figure-process-flow1150465 -Ref: Basic High Level-Footnote-11153694 -Node: Basic Data Typing1153879 -Node: Glossary1157206 -Node: Copying1182358 -Node: GNU Free Documentation License1219914 -Node: Index1245050 +Node: Running Examples658243 +Node: Clones658971 +Node: Cut Program660195 +Node: Egrep Program670056 +Ref: Egrep Program-Footnote-1677985 +Node: Id Program678095 +Node: Split Program681759 +Ref: Split Program-Footnote-1685290 +Node: Tee Program685418 +Node: Uniq Program688225 +Node: Wc Program695655 +Ref: Wc Program-Footnote-1699923 +Ref: Wc Program-Footnote-2700123 +Node: Miscellaneous Programs700215 +Node: Dupword Program701428 +Node: Alarm Program703459 +Node: Translate Program708273 +Ref: Translate Program-Footnote-1712664 +Ref: Translate Program-Footnote-2712934 +Node: Labels Program713068 +Ref: Labels Program-Footnote-1716439 +Node: Word Sorting716523 +Node: History Sorting720566 +Node: Extract Program722402 +Ref: Extract Program-Footnote-1729977 +Node: Simple Sed730106 +Node: Igawk Program733168 +Ref: Igawk Program-Footnote-1748344 +Ref: Igawk Program-Footnote-2748545 +Node: Anagram Program748683 +Node: Signature Program751751 +Node: Programs Summary752998 +Node: Advanced Features754186 +Node: Nondecimal Data756134 +Node: Array Sorting757711 +Node: Controlling Array Traversal758408 +Node: Array Sorting Functions766688 +Ref: Array Sorting Functions-Footnote-1770595 +Node: Two-way I/O770789 +Ref: Two-way I/O-Footnote-1776305 +Node: TCP/IP Networking776387 +Node: Profiling779231 +Node: Advanced Features Summary786773 +Node: Internationalization788637 +Node: I18N and L10N790117 +Node: Explaining gettext790803 +Ref: Explaining gettext-Footnote-1795943 +Ref: Explaining gettext-Footnote-2796127 +Node: Programmer i18n796292 +Node: Translator i18n800517 +Node: String Extraction801311 +Ref: String Extraction-Footnote-1802272 +Node: Printf Ordering802358 +Ref: Printf Ordering-Footnote-1805140 +Node: I18N Portability805204 +Ref: I18N Portability-Footnote-1807653 +Node: I18N Example807716 +Ref: I18N Example-Footnote-1810438 +Node: Gawk I18N810510 +Node: I18N Summary811148 +Node: Debugger812487 +Node: Debugging813509 +Node: Debugging Concepts813950 +Node: Debugging Terms815806 +Node: Awk Debugging818403 +Node: Sample Debugging Session819295 +Node: Debugger Invocation819815 +Node: Finding The Bug821148 +Node: List of Debugger Commands827630 +Node: Breakpoint Control828962 +Node: Debugger Execution Control832626 +Node: Viewing And Changing Data835986 +Node: Execution Stack839344 +Node: Debugger Info840857 +Node: Miscellaneous Debugger Commands844851 +Node: Readline Support850035 +Node: Limitations850927 +Node: Debugging Summary853201 +Node: Arbitrary Precision Arithmetic854365 +Ref: Arbitrary Precision Arithmetic-Footnote-1856014 +Node: General Arithmetic856162 +Node: Floating Point Issues857882 +Node: String Conversion Precision858763 +Ref: String Conversion Precision-Footnote-1860468 +Node: Unexpected Results860577 +Node: POSIX Floating Point Problems862730 +Ref: POSIX Floating Point Problems-Footnote-1866551 +Node: Integer Programming866589 +Node: Floating-point Programming868400 +Ref: Floating-point Programming-Footnote-1874728 +Ref: Floating-point Programming-Footnote-2874998 +Node: Floating-point Representation875262 +Node: Floating-point Context876427 +Ref: table-ieee-formats877266 +Node: Rounding Mode878650 +Ref: table-rounding-modes879129 +Ref: Rounding Mode-Footnote-1882144 +Node: Gawk and MPFR882323 +Node: Arbitrary Precision Floats883732 +Ref: Arbitrary Precision Floats-Footnote-1886175 +Node: Setting Precision886496 +Ref: table-predefined-precision-strings887180 +Node: Setting Rounding Mode889325 +Ref: table-gawk-rounding-modes889729 +Node: Floating-point Constants890916 +Node: Changing Precision892368 +Ref: Changing Precision-Footnote-1893760 +Node: Exact Arithmetic893934 +Node: Arbitrary Precision Integers897068 +Ref: Arbitrary Precision Integers-Footnote-1900083 +Node: Dynamic Extensions900230 +Node: Extension Intro901688 +Node: Plugin License902953 +Node: Extension Mechanism Outline903638 +Ref: figure-load-extension904062 +Ref: figure-load-new-function905547 +Ref: figure-call-new-function906549 +Node: Extension API Description908533 +Node: Extension API Functions Introduction909983 +Node: General Data Types914849 +Ref: General Data Types-Footnote-1920542 +Node: Requesting Values920841 +Ref: table-value-types-returned921578 +Node: Memory Allocation Functions922536 +Ref: Memory Allocation Functions-Footnote-1925283 +Node: Constructor Functions925379 +Node: Registration Functions927137 +Node: Extension Functions927822 +Node: Exit Callback Functions930124 +Node: Extension Version String931374 +Node: Input Parsers932024 +Node: Output Wrappers941827 +Node: Two-way processors946343 +Node: Printing Messages948547 +Ref: Printing Messages-Footnote-1949624 +Node: Updating `ERRNO'949776 +Node: Accessing Parameters950515 +Node: Symbol Table Access951745 +Node: Symbol table by name952259 +Node: Symbol table by cookie954235 +Ref: Symbol table by cookie-Footnote-1958368 +Node: Cached values958431 +Ref: Cached values-Footnote-1961936 +Node: Array Manipulation962027 +Ref: Array Manipulation-Footnote-1963125 +Node: Array Data Types963164 +Ref: Array Data Types-Footnote-1965867 +Node: Array Functions965959 +Node: Flattening Arrays969833 +Node: Creating Arrays976685 +Node: Extension API Variables981416 +Node: Extension Versioning982052 +Node: Extension API Informational Variables983953 +Node: Extension API Boilerplate985039 +Node: Finding Extensions988843 +Node: Extension Example989403 +Node: Internal File Description990133 +Node: Internal File Ops994224 +Ref: Internal File Ops-Footnote-11005770 +Node: Using Internal File Ops1005910 +Ref: Using Internal File Ops-Footnote-11008257 +Node: Extension Samples1008525 +Node: Extension Sample File Functions1010049 +Node: Extension Sample Fnmatch1017617 +Node: Extension Sample Fork1019084 +Node: Extension Sample Inplace1020297 +Node: Extension Sample Ord1022063 +Node: Extension Sample Readdir1022899 +Ref: table-readdir-file-types1023748 +Node: Extension Sample Revout1024547 +Node: Extension Sample Rev2way1025138 +Node: Extension Sample Read write array1025879 +Node: Extension Sample Readfile1027758 +Node: Extension Sample API Tests1028858 +Node: Extension Sample Time1029383 +Node: gawkextlib1030698 +Node: Language History1033485 +Node: V7/SVR3.11035079 +Node: SVR41037399 +Node: POSIX1038841 +Node: BTL1040227 +Node: POSIX/GNU1040961 +Node: Feature History1046560 +Node: Common Extensions1059672 +Node: Ranges and Locales1060984 +Ref: Ranges and Locales-Footnote-11065601 +Ref: Ranges and Locales-Footnote-21065628 +Ref: Ranges and Locales-Footnote-31065862 +Node: Contributors1066083 +Node: Installation1071521 +Node: Gawk Distribution1072415 +Node: Getting1072899 +Node: Extracting1073725 +Node: Distribution contents1075367 +Node: Unix Installation1081084 +Node: Quick Installation1081701 +Node: Additional Configuration Options1084143 +Node: Configuration Philosophy1085881 +Node: Non-Unix Installation1088232 +Node: PC Installation1088690 +Node: PC Binary Installation1090001 +Node: PC Compiling1091849 +Ref: PC Compiling-Footnote-11094848 +Node: PC Testing1094953 +Node: PC Using1096129 +Node: Cygwin1100287 +Node: MSYS1101096 +Node: VMS Installation1101610 +Node: VMS Compilation1102406 +Ref: VMS Compilation-Footnote-11103621 +Node: VMS Dynamic Extensions1103679 +Node: VMS Installation Details1105052 +Node: VMS Running1107298 +Node: VMS GNV1110132 +Node: VMS Old Gawk1110855 +Node: Bugs1111325 +Node: Other Versions1115329 +Node: Notes1121554 +Node: Compatibility Mode1122354 +Node: Additions1123136 +Node: Accessing The Source1124061 +Node: Adding Code1125497 +Node: New Ports1131675 +Node: Derived Files1136156 +Ref: Derived Files-Footnote-11141237 +Ref: Derived Files-Footnote-21141271 +Ref: Derived Files-Footnote-31141867 +Node: Future Extensions1141981 +Node: Implementation Limitations1142587 +Node: Extension Design1143835 +Node: Old Extension Problems1144989 +Ref: Old Extension Problems-Footnote-11146506 +Node: Extension New Mechanism Goals1146563 +Ref: Extension New Mechanism Goals-Footnote-11149924 +Node: Extension Other Design Decisions1150113 +Node: Extension Future Growth1152219 +Node: Old Extension Mechanism1153055 +Node: Basic Concepts1154795 +Node: Basic High Level1155476 +Ref: figure-general-flow1155748 +Ref: figure-process-flow1156347 +Ref: Basic High Level-Footnote-11159576 +Node: Basic Data Typing1159761 +Node: Glossary1163088 +Node: Copying1188240 +Node: GNU Free Documentation License1225796 +Node: Index1250932 End Tag Table |