File: gawk.info, Node: Advanced Features, Next: Internationalization, Prev: Sample Programs, Up: Top 12 Advanced Features of 'gawk' ****************************** Write documentation as if whoever reads it is a violent psychopath who knows where you live. -- _Steve English, as quoted by Peter Langston_ This major node discusses advanced features in 'gawk'. It's a bit of a "grab bag" of items that are otherwise unrelated to each other. First, we look at a command-line option that allows 'gawk' to recognize nondecimal numbers in input data, not just in 'awk' programs. Then, 'gawk''s special features for sorting arrays are presented. Next, two-way I/O, discussed briefly in earlier parts of this Info file, is described in full detail, along with the basics of TCP/IP networking. We then see how 'gawk' can "profile" an 'awk' program, making it possible to tune it for performance. Next, we present an experimental feature that allows you to preserve the values of 'awk' variables and arrays between runs of 'gawk'. Finally, we discuss the philosophy behind 'gawk''s extension mechanism. Additional advanced features are discussed in separate major nodes of their own: * *note Internationalization::, discusses how to internationalize your 'awk' programs, so that they can speak multiple national languages. * *note Debugger::, describes 'gawk''s built-in command-line debugger for debugging 'awk' programs. * *note Arbitrary Precision Arithmetic::, describes how you can use 'gawk' to perform arbitrary-precision arithmetic. * *note Dynamic Extensions::, discusses the ability to dynamically add new built-in functions to 'gawk'. * Menu: * Nondecimal Data:: Allowing nondecimal input data. * Boolean Typed Values:: Values with 'number|bool' type. * Array Sorting:: Facilities for controlling array traversal and sorting arrays. * Two-way I/O:: Two-way communications with another process. * TCP/IP Networking:: Using 'gawk' for network programming. * Profiling:: Profiling your 'awk' programs. * Persistent Memory:: Preserving data between runs. * Extension Philosophy:: What should be built-in and what should not. * Advanced Features Summary:: Summary of advanced features.