diff options
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 521 |
1 files changed, 252 insertions, 269 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index 99f29492..53e11012 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -16541,23 +16541,6 @@ File: gawk.info, Node: Library Exercises, Prev: Library Functions Summary, Up 2. As a related challenge, revise that code to handle the case where an intervening value in 'ARGV' is a variable assignment. - 3. *note Walking Arrays::, presented a function that walked a - multidimensional array to print it out. However, walking an array - and processing each element is a general-purpose operation. - Generalize the 'walk_array()' function by adding an additional - parameter named 'process'. - - Then, inside the loop, instead of printing the array element's - index and value, use the indirect function call syntax (*note - Indirect Calls::) on 'process', passing it the index and the value. - - When calling 'walk_array()', you would pass the name of a - user-defined function that expects to receive an index and a value, - and then processes the element. - - Test your new version by printing the array; you should end up with - output identical to that of the original version. - File: gawk.info, Node: Sample Programs, Next: Advanced Features, Prev: Library Functions, Up: Top @@ -35284,257 +35267,257 @@ Ref: Group Functions-Footnote-1680639 Node: Walking Arrays680846 Node: Library Functions Summary683856 Node: Library Exercises685262 -Node: Sample Programs686541 -Node: Running Examples687311 -Node: Clones688039 -Node: Cut Program689263 -Node: Egrep Program698984 -Ref: Egrep Program-Footnote-1706496 -Node: Id Program706606 -Node: Split Program710286 -Ref: Split Program-Footnote-1713745 -Node: Tee Program713874 -Node: Uniq Program716664 -Node: Wc Program724090 -Ref: Wc Program-Footnote-1728345 -Node: Miscellaneous Programs728439 -Node: Dupword Program729652 -Node: Alarm Program731682 -Node: Translate Program736537 -Ref: Translate Program-Footnote-1741102 -Node: Labels Program741372 -Ref: Labels Program-Footnote-1744723 -Node: Word Sorting744807 -Node: History Sorting748879 -Node: Extract Program750714 -Node: Simple Sed758245 -Node: Igawk Program761319 -Ref: Igawk Program-Footnote-1775650 -Ref: Igawk Program-Footnote-2775852 -Ref: Igawk Program-Footnote-3775974 -Node: Anagram Program776089 -Node: Signature Program779151 -Node: Programs Summary780398 -Node: Programs Exercises781613 -Ref: Programs Exercises-Footnote-1785742 -Node: Advanced Features785833 -Node: Nondecimal Data787823 -Node: Array Sorting789414 -Node: Controlling Array Traversal790114 -Ref: Controlling Array Traversal-Footnote-1798483 -Node: Array Sorting Functions798601 -Ref: Array Sorting Functions-Footnote-1802488 -Node: Two-way I/O802684 -Ref: Two-way I/O-Footnote-1807635 -Ref: Two-way I/O-Footnote-2807822 -Node: TCP/IP Networking807904 -Node: Profiling810811 -Node: Advanced Features Summary819082 -Node: Internationalization821018 -Node: I18N and L10N822498 -Node: Explaining gettext823185 -Ref: Explaining gettext-Footnote-1828208 -Ref: Explaining gettext-Footnote-2828393 -Node: Programmer i18n828558 -Ref: Programmer i18n-Footnote-1833414 -Node: Translator i18n833463 -Node: String Extraction834257 -Ref: String Extraction-Footnote-1835390 -Node: Printf Ordering835476 -Ref: Printf Ordering-Footnote-1838262 -Node: I18N Portability838326 -Ref: I18N Portability-Footnote-1840782 -Node: I18N Example840845 -Ref: I18N Example-Footnote-1843651 -Node: Gawk I18N843724 -Node: I18N Summary844369 -Node: Debugger845710 -Node: Debugging846732 -Node: Debugging Concepts847173 -Node: Debugging Terms848982 -Node: Awk Debugging851557 -Node: Sample Debugging Session852463 -Node: Debugger Invocation852997 -Node: Finding The Bug854383 -Node: List of Debugger Commands860861 -Node: Breakpoint Control862194 -Node: Debugger Execution Control865888 -Node: Viewing And Changing Data869250 -Node: Execution Stack872624 -Node: Debugger Info874261 -Node: Miscellaneous Debugger Commands878332 -Node: Readline Support883341 -Node: Limitations884237 -Node: Debugging Summary886346 -Node: Arbitrary Precision Arithmetic887519 -Node: Computer Arithmetic888935 -Ref: table-numeric-ranges892526 -Ref: Computer Arithmetic-Footnote-1893248 -Node: Math Definitions893305 -Ref: table-ieee-formats896619 -Ref: Math Definitions-Footnote-1897222 -Node: MPFR features897327 -Node: FP Math Caution899000 -Ref: FP Math Caution-Footnote-1900072 -Node: Inexactness of computations900441 -Node: Inexact representation901401 -Node: Comparing FP Values902761 -Node: Errors accumulate903843 -Node: Getting Accuracy905276 -Node: Try To Round907986 -Node: Setting precision908885 -Ref: table-predefined-precision-strings909582 -Node: Setting the rounding mode911412 -Ref: table-gawk-rounding-modes911786 -Ref: Setting the rounding mode-Footnote-1915194 -Node: Arbitrary Precision Integers915373 -Ref: Arbitrary Precision Integers-Footnote-1920290 -Node: POSIX Floating Point Problems920439 -Ref: POSIX Floating Point Problems-Footnote-1924321 -Node: Floating point summary924359 -Node: Dynamic Extensions926549 -Node: Extension Intro928102 -Node: Plugin License929368 -Node: Extension Mechanism Outline930165 -Ref: figure-load-extension930604 -Ref: figure-register-new-function932169 -Ref: figure-call-new-function933261 -Node: Extension API Description935324 -Node: Extension API Functions Introduction936858 -Node: General Data Types941717 -Ref: General Data Types-Footnote-1947672 -Node: Memory Allocation Functions947971 -Ref: Memory Allocation Functions-Footnote-1950816 -Node: Constructor Functions950915 -Node: Registration Functions952660 -Node: Extension Functions953345 -Node: Exit Callback Functions955644 -Node: Extension Version String956894 -Node: Input Parsers957557 -Node: Output Wrappers967442 -Node: Two-way processors971954 -Node: Printing Messages974218 -Ref: Printing Messages-Footnote-1975294 -Node: Updating 'ERRNO'975447 -Node: Requesting Values976188 -Ref: table-value-types-returned976927 -Node: Accessing Parameters977810 -Node: Symbol Table Access979046 -Node: Symbol table by name979558 -Node: Symbol table by cookie981579 -Ref: Symbol table by cookie-Footnote-1985728 -Node: Cached values985792 -Ref: Cached values-Footnote-1989293 -Node: Array Manipulation989384 -Ref: Array Manipulation-Footnote-1990475 -Node: Array Data Types990512 -Ref: Array Data Types-Footnote-1993170 -Node: Array Functions993262 -Node: Flattening Arrays997121 -Node: Creating Arrays1004029 -Node: Redirection API1008801 -Node: Extension API Variables1011632 -Node: Extension Versioning1012265 -Node: Extension API Informational Variables1014156 -Node: Extension API Boilerplate1015220 -Node: Finding Extensions1019034 -Node: Extension Example1019594 -Node: Internal File Description1020392 -Node: Internal File Ops1024472 -Ref: Internal File Ops-Footnote-11036234 -Node: Using Internal File Ops1036374 -Ref: Using Internal File Ops-Footnote-11038757 -Node: Extension Samples1039032 -Node: Extension Sample File Functions1040561 -Node: Extension Sample Fnmatch1048210 -Node: Extension Sample Fork1049697 -Node: Extension Sample Inplace1050915 -Node: Extension Sample Ord1053001 -Node: Extension Sample Readdir1053837 -Ref: table-readdir-file-types1054726 -Node: Extension Sample Revout1055531 -Node: Extension Sample Rev2way1056120 -Node: Extension Sample Read write array1056860 -Node: Extension Sample Readfile1058802 -Node: Extension Sample Time1059897 -Node: Extension Sample API Tests1061245 -Node: gawkextlib1061737 -Node: Extension summary1064184 -Node: Extension Exercises1067876 -Node: Language History1069373 -Node: V7/SVR3.11071029 -Node: SVR41073182 -Node: POSIX1074616 -Node: BTL1075996 -Node: POSIX/GNU1076726 -Node: Feature History1082565 -Node: Common Extensions1096884 -Node: Ranges and Locales1098167 -Ref: Ranges and Locales-Footnote-11102783 -Ref: Ranges and Locales-Footnote-21102810 -Ref: Ranges and Locales-Footnote-31103045 -Node: Contributors1103266 -Node: History summary1108835 -Node: Installation1110215 -Node: Gawk Distribution1111160 -Node: Getting1111644 -Node: Extracting1112467 -Node: Distribution contents1114105 -Node: Unix Installation1120201 -Node: Quick Installation1120883 -Node: Shell Startup Files1123297 -Node: Additional Configuration Options1124375 -Node: Configuration Philosophy1126180 -Node: Non-Unix Installation1128550 -Node: PC Installation1129008 -Node: PC Binary Installation1130328 -Node: PC Compiling1132180 -Ref: PC Compiling-Footnote-11135204 -Node: PC Testing1135313 -Node: PC Using1136493 -Node: Cygwin1140607 -Node: MSYS1141377 -Node: VMS Installation1141878 -Node: VMS Compilation1142669 -Ref: VMS Compilation-Footnote-11143899 -Node: VMS Dynamic Extensions1143957 -Node: VMS Installation Details1145642 -Node: VMS Running1147895 -Node: VMS GNV1150736 -Node: VMS Old Gawk1151471 -Node: Bugs1151942 -Node: Other Versions1156056 -Node: Installation summary1162530 -Node: Notes1163588 -Node: Compatibility Mode1164453 -Node: Additions1165235 -Node: Accessing The Source1166160 -Node: Adding Code1167596 -Node: New Ports1173751 -Node: Derived Files1178239 -Ref: Derived Files-Footnote-11183724 -Ref: Derived Files-Footnote-21183759 -Ref: Derived Files-Footnote-31184357 -Node: Future Extensions1184471 -Node: Implementation Limitations1185129 -Node: Extension Design1186312 -Node: Old Extension Problems1187466 -Ref: Old Extension Problems-Footnote-11188984 -Node: Extension New Mechanism Goals1189041 -Ref: Extension New Mechanism Goals-Footnote-11192405 -Node: Extension Other Design Decisions1192594 -Node: Extension Future Growth1194707 -Node: Old Extension Mechanism1195543 -Node: Notes summary1197306 -Node: Basic Concepts1198488 -Node: Basic High Level1199169 -Ref: figure-general-flow1199451 -Ref: figure-process-flow1200136 -Ref: Basic High Level-Footnote-11203437 -Node: Basic Data Typing1203622 -Node: Glossary1206950 -Node: Copying1238896 -Node: GNU Free Documentation License1276435 -Node: Index1301553 +Node: Sample Programs685727 +Node: Running Examples686497 +Node: Clones687225 +Node: Cut Program688449 +Node: Egrep Program698170 +Ref: Egrep Program-Footnote-1705682 +Node: Id Program705792 +Node: Split Program709472 +Ref: Split Program-Footnote-1712931 +Node: Tee Program713060 +Node: Uniq Program715850 +Node: Wc Program723276 +Ref: Wc Program-Footnote-1727531 +Node: Miscellaneous Programs727625 +Node: Dupword Program728838 +Node: Alarm Program730868 +Node: Translate Program735723 +Ref: Translate Program-Footnote-1740288 +Node: Labels Program740558 +Ref: Labels Program-Footnote-1743909 +Node: Word Sorting743993 +Node: History Sorting748065 +Node: Extract Program749900 +Node: Simple Sed757431 +Node: Igawk Program760505 +Ref: Igawk Program-Footnote-1774836 +Ref: Igawk Program-Footnote-2775038 +Ref: Igawk Program-Footnote-3775160 +Node: Anagram Program775275 +Node: Signature Program778337 +Node: Programs Summary779584 +Node: Programs Exercises780799 +Ref: Programs Exercises-Footnote-1784928 +Node: Advanced Features785019 +Node: Nondecimal Data787009 +Node: Array Sorting788600 +Node: Controlling Array Traversal789300 +Ref: Controlling Array Traversal-Footnote-1797669 +Node: Array Sorting Functions797787 +Ref: Array Sorting Functions-Footnote-1801674 +Node: Two-way I/O801870 +Ref: Two-way I/O-Footnote-1806821 +Ref: Two-way I/O-Footnote-2807008 +Node: TCP/IP Networking807090 +Node: Profiling809997 +Node: Advanced Features Summary818268 +Node: Internationalization820204 +Node: I18N and L10N821684 +Node: Explaining gettext822371 +Ref: Explaining gettext-Footnote-1827394 +Ref: Explaining gettext-Footnote-2827579 +Node: Programmer i18n827744 +Ref: Programmer i18n-Footnote-1832600 +Node: Translator i18n832649 +Node: String Extraction833443 +Ref: String Extraction-Footnote-1834576 +Node: Printf Ordering834662 +Ref: Printf Ordering-Footnote-1837448 +Node: I18N Portability837512 +Ref: I18N Portability-Footnote-1839968 +Node: I18N Example840031 +Ref: I18N Example-Footnote-1842837 +Node: Gawk I18N842910 +Node: I18N Summary843555 +Node: Debugger844896 +Node: Debugging845918 +Node: Debugging Concepts846359 +Node: Debugging Terms848168 +Node: Awk Debugging850743 +Node: Sample Debugging Session851649 +Node: Debugger Invocation852183 +Node: Finding The Bug853569 +Node: List of Debugger Commands860047 +Node: Breakpoint Control861380 +Node: Debugger Execution Control865074 +Node: Viewing And Changing Data868436 +Node: Execution Stack871810 +Node: Debugger Info873447 +Node: Miscellaneous Debugger Commands877518 +Node: Readline Support882527 +Node: Limitations883423 +Node: Debugging Summary885532 +Node: Arbitrary Precision Arithmetic886705 +Node: Computer Arithmetic888121 +Ref: table-numeric-ranges891712 +Ref: Computer Arithmetic-Footnote-1892434 +Node: Math Definitions892491 +Ref: table-ieee-formats895805 +Ref: Math Definitions-Footnote-1896408 +Node: MPFR features896513 +Node: FP Math Caution898186 +Ref: FP Math Caution-Footnote-1899258 +Node: Inexactness of computations899627 +Node: Inexact representation900587 +Node: Comparing FP Values901947 +Node: Errors accumulate903029 +Node: Getting Accuracy904462 +Node: Try To Round907172 +Node: Setting precision908071 +Ref: table-predefined-precision-strings908768 +Node: Setting the rounding mode910598 +Ref: table-gawk-rounding-modes910972 +Ref: Setting the rounding mode-Footnote-1914380 +Node: Arbitrary Precision Integers914559 +Ref: Arbitrary Precision Integers-Footnote-1919476 +Node: POSIX Floating Point Problems919625 +Ref: POSIX Floating Point Problems-Footnote-1923507 +Node: Floating point summary923545 +Node: Dynamic Extensions925735 +Node: Extension Intro927288 +Node: Plugin License928554 +Node: Extension Mechanism Outline929351 +Ref: figure-load-extension929790 +Ref: figure-register-new-function931355 +Ref: figure-call-new-function932447 +Node: Extension API Description934510 +Node: Extension API Functions Introduction936044 +Node: General Data Types940903 +Ref: General Data Types-Footnote-1946858 +Node: Memory Allocation Functions947157 +Ref: Memory Allocation Functions-Footnote-1950002 +Node: Constructor Functions950101 +Node: Registration Functions951846 +Node: Extension Functions952531 +Node: Exit Callback Functions954830 +Node: Extension Version String956080 +Node: Input Parsers956743 +Node: Output Wrappers966628 +Node: Two-way processors971140 +Node: Printing Messages973404 +Ref: Printing Messages-Footnote-1974480 +Node: Updating 'ERRNO'974633 +Node: Requesting Values975374 +Ref: table-value-types-returned976113 +Node: Accessing Parameters976996 +Node: Symbol Table Access978232 +Node: Symbol table by name978744 +Node: Symbol table by cookie980765 +Ref: Symbol table by cookie-Footnote-1984914 +Node: Cached values984978 +Ref: Cached values-Footnote-1988479 +Node: Array Manipulation988570 +Ref: Array Manipulation-Footnote-1989661 +Node: Array Data Types989698 +Ref: Array Data Types-Footnote-1992356 +Node: Array Functions992448 +Node: Flattening Arrays996307 +Node: Creating Arrays1003215 +Node: Redirection API1007987 +Node: Extension API Variables1010818 +Node: Extension Versioning1011451 +Node: Extension API Informational Variables1013342 +Node: Extension API Boilerplate1014406 +Node: Finding Extensions1018220 +Node: Extension Example1018780 +Node: Internal File Description1019578 +Node: Internal File Ops1023658 +Ref: Internal File Ops-Footnote-11035420 +Node: Using Internal File Ops1035560 +Ref: Using Internal File Ops-Footnote-11037943 +Node: Extension Samples1038218 +Node: Extension Sample File Functions1039747 +Node: Extension Sample Fnmatch1047396 +Node: Extension Sample Fork1048883 +Node: Extension Sample Inplace1050101 +Node: Extension Sample Ord1052187 +Node: Extension Sample Readdir1053023 +Ref: table-readdir-file-types1053912 +Node: Extension Sample Revout1054717 +Node: Extension Sample Rev2way1055306 +Node: Extension Sample Read write array1056046 +Node: Extension Sample Readfile1057988 +Node: Extension Sample Time1059083 +Node: Extension Sample API Tests1060431 +Node: gawkextlib1060923 +Node: Extension summary1063370 +Node: Extension Exercises1067062 +Node: Language History1068559 +Node: V7/SVR3.11070215 +Node: SVR41072368 +Node: POSIX1073802 +Node: BTL1075182 +Node: POSIX/GNU1075912 +Node: Feature History1081751 +Node: Common Extensions1096070 +Node: Ranges and Locales1097353 +Ref: Ranges and Locales-Footnote-11101969 +Ref: Ranges and Locales-Footnote-21101996 +Ref: Ranges and Locales-Footnote-31102231 +Node: Contributors1102452 +Node: History summary1108021 +Node: Installation1109401 +Node: Gawk Distribution1110346 +Node: Getting1110830 +Node: Extracting1111653 +Node: Distribution contents1113291 +Node: Unix Installation1119387 +Node: Quick Installation1120069 +Node: Shell Startup Files1122483 +Node: Additional Configuration Options1123561 +Node: Configuration Philosophy1125366 +Node: Non-Unix Installation1127736 +Node: PC Installation1128194 +Node: PC Binary Installation1129514 +Node: PC Compiling1131366 +Ref: PC Compiling-Footnote-11134390 +Node: PC Testing1134499 +Node: PC Using1135679 +Node: Cygwin1139793 +Node: MSYS1140563 +Node: VMS Installation1141064 +Node: VMS Compilation1141855 +Ref: VMS Compilation-Footnote-11143085 +Node: VMS Dynamic Extensions1143143 +Node: VMS Installation Details1144828 +Node: VMS Running1147081 +Node: VMS GNV1149922 +Node: VMS Old Gawk1150657 +Node: Bugs1151128 +Node: Other Versions1155242 +Node: Installation summary1161716 +Node: Notes1162774 +Node: Compatibility Mode1163639 +Node: Additions1164421 +Node: Accessing The Source1165346 +Node: Adding Code1166782 +Node: New Ports1172937 +Node: Derived Files1177425 +Ref: Derived Files-Footnote-11182910 +Ref: Derived Files-Footnote-21182945 +Ref: Derived Files-Footnote-31183543 +Node: Future Extensions1183657 +Node: Implementation Limitations1184315 +Node: Extension Design1185498 +Node: Old Extension Problems1186652 +Ref: Old Extension Problems-Footnote-11188170 +Node: Extension New Mechanism Goals1188227 +Ref: Extension New Mechanism Goals-Footnote-11191591 +Node: Extension Other Design Decisions1191780 +Node: Extension Future Growth1193893 +Node: Old Extension Mechanism1194729 +Node: Notes summary1196492 +Node: Basic Concepts1197674 +Node: Basic High Level1198355 +Ref: figure-general-flow1198637 +Ref: figure-process-flow1199322 +Ref: Basic High Level-Footnote-11202623 +Node: Basic Data Typing1202808 +Node: Glossary1206136 +Node: Copying1238082 +Node: GNU Free Documentation License1275621 +Node: Index1300739 End Tag Table |