aboutsummaryrefslogtreecommitdiffstats
path: root/doc/gawk.info
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gawk.info')
-rw-r--r--doc/gawk.info461
1 files changed, 238 insertions, 223 deletions
diff --git a/doc/gawk.info b/doc/gawk.info
index caa557e8..4e8b653a 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -19818,8 +19818,7 @@ output. They are as follows:
you typed when you wrote it. This is because `gawk' creates the
profiled version by "pretty printing" its internal representation of
the program. The advantage to this is that `gawk' can produce a
-standard representation. The disadvantage is that all source-code
-comments are lost. Also, things such as:
+standard representation. Also, things such as:
/foo/
@@ -19881,6 +19880,22 @@ without any execution counts.
NOTE: Once upon a time, the `--pretty-print' option would also run
your program. This is is no longer the case.
+ There is a significant difference between the output created when
+profiling, and that created when pretty-printing. Pretty-printed output
+preserves the original comments that were in the program, although their
+placement may not correspond exactly to their original locations in the
+source code.
+
+ However, as a deliberate design decision, profiling output _omits_
+the original program's comments. This allows you to focus on the
+execution count data and helps you avoid the temptation to use the
+profiler for pretty-printing.
+
+ Additionally, pretty-printed output does not have the leading
+indentation that the profiling output does. This makes it easy to
+pretty-print your code once development is completed, and then use the
+result as the final version of your program.
+

File: gawk.info, Node: Advanced Features Summary, Prev: Profiling, Up: Advanced Features
@@ -32377,7 +32392,7 @@ Index
* dump debugger command: Miscellaneous Debugger Commands.
(line 9)
* dupword.awk program: Dupword Program. (line 31)
-* dynamic profiling: Profiling. (line 179)
+* dynamic profiling: Profiling. (line 178)
* dynamically loaded extensions: Dynamic Extensions. (line 6)
* e debugger command (alias for enable): Breakpoint Control. (line 73)
* EBCDIC: Ordinal Functions. (line 45)
@@ -32748,7 +32763,7 @@ Index
(line 44)
* G-d: Acknowledgments. (line 94)
* Garfinkle, Scott: Contributors. (line 34)
-* gawk program, dynamic profiling: Profiling. (line 179)
+* gawk program, dynamic profiling: Profiling. (line 178)
* gawk version: Auto-set. (line 214)
* gawk, ARGIND variable in: Other Arguments. (line 15)
* gawk, awk and <1>: This Manual. (line 14)
@@ -32939,7 +32954,7 @@ Index
* history expansion, in debugger: Readline Support. (line 6)
* histsort.awk program: History Sorting. (line 25)
* Hughes, Phil: Acknowledgments. (line 43)
-* HUP signal, for dynamic profiling: Profiling. (line 211)
+* HUP signal, for dynamic profiling: Profiling. (line 210)
* hyphen (-), - operator: Precedence. (line 52)
* hyphen (-), -- operator <1>: Precedence. (line 46)
* hyphen (-), -- operator: Increment Ops. (line 48)
@@ -33019,7 +33034,7 @@ Index
* installing gawk: Installation. (line 6)
* instruction tracing, in debugger: Debugger Info. (line 89)
* int: Numeric Functions. (line 38)
-* INT signal (MS-Windows): Profiling. (line 214)
+* INT signal (MS-Windows): Profiling. (line 213)
* integer array indices: Numeric Array Subscripts.
(line 31)
* integers, arbitrary precision: Arbitrary Precision Integers.
@@ -33075,7 +33090,7 @@ Index
* Kernighan, Brian <9>: Acknowledgments. (line 78)
* Kernighan, Brian <10>: Conventions. (line 38)
* Kernighan, Brian: History. (line 17)
-* kill command, dynamic profiling: Profiling. (line 188)
+* kill command, dynamic profiling: Profiling. (line 187)
* Knights, jedi: Undocumented. (line 6)
* Kwok, Conrad: Contributors. (line 34)
* l debugger command (alias for list): Miscellaneous Debugger Commands.
@@ -33582,7 +33597,7 @@ Index
* PROCINFO, values of sorted_in: Controlling Scanning.
(line 26)
* profiling awk programs: Profiling. (line 6)
-* profiling awk programs, dynamically: Profiling. (line 179)
+* profiling awk programs, dynamically: Profiling. (line 178)
* program identifiers: Auto-set. (line 155)
* program, definition of: Getting Started. (line 21)
* programming conventions, --non-decimal-data option: Nondecimal Data.
@@ -33618,7 +33633,7 @@ Index
* QuikTrim Awk: Other Versions. (line 135)
* quit debugger command: Miscellaneous Debugger Commands.
(line 99)
-* QUIT signal (MS-Windows): Profiling. (line 214)
+* QUIT signal (MS-Windows): Profiling. (line 213)
* quoting in gawk command lines: Long. (line 26)
* quoting in gawk command lines, tricks for: Quoting. (line 91)
* quoting, for small awk programs: Comments. (line 27)
@@ -33899,15 +33914,15 @@ Index
(line 57)
* sidebar, Using close()'s Return Value: Close Files And Pipes.
(line 130)
-* SIGHUP signal, for dynamic profiling: Profiling. (line 211)
-* SIGINT signal (MS-Windows): Profiling. (line 214)
-* signals, HUP/SIGHUP, for profiling: Profiling. (line 211)
-* signals, INT/SIGINT (MS-Windows): Profiling. (line 214)
-* signals, QUIT/SIGQUIT (MS-Windows): Profiling. (line 214)
-* signals, USR1/SIGUSR1, for profiling: Profiling. (line 188)
+* SIGHUP signal, for dynamic profiling: Profiling. (line 210)
+* SIGINT signal (MS-Windows): Profiling. (line 213)
+* signals, HUP/SIGHUP, for profiling: Profiling. (line 210)
+* signals, INT/SIGINT (MS-Windows): Profiling. (line 213)
+* signals, QUIT/SIGQUIT (MS-Windows): Profiling. (line 213)
+* signals, USR1/SIGUSR1, for profiling: Profiling. (line 187)
* signature program: Signature Program. (line 6)
-* SIGQUIT signal (MS-Windows): Profiling. (line 214)
-* SIGUSR1 signal, for dynamic profiling: Profiling. (line 188)
+* SIGQUIT signal (MS-Windows): Profiling. (line 213)
+* SIGUSR1 signal, for dynamic profiling: Profiling. (line 187)
* silent debugger command: Debugger Execution Control.
(line 10)
* sin: Numeric Functions. (line 91)
@@ -34181,7 +34196,7 @@ Index
* user-modifiable variables: User-modified. (line 6)
* users, information about, printing: Id Program. (line 6)
* users, information about, retrieving: Passwd Functions. (line 16)
-* USR1 signal, for dynamic profiling: Profiling. (line 188)
+* USR1 signal, for dynamic profiling: Profiling. (line 187)
* values, numeric: Basic Data Typing. (line 13)
* values, string: Basic Data Typing. (line 13)
* variable assignments and input files: Other Arguments. (line 26)
@@ -34655,210 +34670,210 @@ Ref: Two-way I/O-Footnote-1792709
Ref: Two-way I/O-Footnote-2792895
Node: TCP/IP Networking792977
Node: Profiling795849
-Node: Advanced Features Summary803402
-Node: Internationalization805335
-Node: I18N and L10N806815
-Node: Explaining gettext807501
-Ref: Explaining gettext-Footnote-1812530
-Ref: Explaining gettext-Footnote-2812714
-Node: Programmer i18n812879
-Ref: Programmer i18n-Footnote-1817745
-Node: Translator i18n817794
-Node: String Extraction818588
-Ref: String Extraction-Footnote-1819719
-Node: Printf Ordering819805
-Ref: Printf Ordering-Footnote-1822591
-Node: I18N Portability822655
-Ref: I18N Portability-Footnote-1825104
-Node: I18N Example825167
-Ref: I18N Example-Footnote-1827967
-Node: Gawk I18N828039
-Node: I18N Summary828677
-Node: Debugger830016
-Node: Debugging831038
-Node: Debugging Concepts831479
-Node: Debugging Terms833336
-Node: Awk Debugging835911
-Node: Sample Debugging Session836803
-Node: Debugger Invocation837323
-Node: Finding The Bug838707
-Node: List of Debugger Commands845182
-Node: Breakpoint Control846514
-Node: Debugger Execution Control850206
-Node: Viewing And Changing Data853570
-Node: Execution Stack856935
-Node: Debugger Info858573
-Node: Miscellaneous Debugger Commands862590
-Node: Readline Support867782
-Node: Limitations868674
-Node: Debugging Summary870771
-Node: Arbitrary Precision Arithmetic871939
-Node: Computer Arithmetic873355
-Ref: table-numeric-ranges876956
-Ref: Computer Arithmetic-Footnote-1877815
-Node: Math Definitions877872
-Ref: table-ieee-formats881159
-Ref: Math Definitions-Footnote-1881763
-Node: MPFR features881868
-Node: FP Math Caution883539
-Ref: FP Math Caution-Footnote-1884589
-Node: Inexactness of computations884958
-Node: Inexact representation885906
-Node: Comparing FP Values887261
-Node: Errors accumulate888334
-Node: Getting Accuracy889767
-Node: Try To Round892426
-Node: Setting precision893325
-Ref: table-predefined-precision-strings894009
-Node: Setting the rounding mode895803
-Ref: table-gawk-rounding-modes896167
-Ref: Setting the rounding mode-Footnote-1899621
-Node: Arbitrary Precision Integers899800
-Ref: Arbitrary Precision Integers-Footnote-1904704
-Node: POSIX Floating Point Problems904853
-Ref: POSIX Floating Point Problems-Footnote-1908729
-Node: Floating point summary908767
-Node: Dynamic Extensions910959
-Node: Extension Intro912511
-Node: Plugin License913777
-Node: Extension Mechanism Outline914574
-Ref: figure-load-extension915002
-Ref: figure-register-new-function916482
-Ref: figure-call-new-function917486
-Node: Extension API Description919472
-Node: Extension API Functions Introduction920922
-Node: General Data Types925758
-Ref: General Data Types-Footnote-1931445
-Node: Memory Allocation Functions931744
-Ref: Memory Allocation Functions-Footnote-1934574
-Node: Constructor Functions934670
-Node: Registration Functions936404
-Node: Extension Functions937089
-Node: Exit Callback Functions939385
-Node: Extension Version String940633
-Node: Input Parsers941283
-Node: Output Wrappers951098
-Node: Two-way processors955614
-Node: Printing Messages957818
-Ref: Printing Messages-Footnote-1958895
-Node: Updating `ERRNO'959047
-Node: Requesting Values959787
-Ref: table-value-types-returned960515
-Node: Accessing Parameters961473
-Node: Symbol Table Access962704
-Node: Symbol table by name963218
-Node: Symbol table by cookie965198
-Ref: Symbol table by cookie-Footnote-1969337
-Node: Cached values969400
-Ref: Cached values-Footnote-1972904
-Node: Array Manipulation972995
-Ref: Array Manipulation-Footnote-1974093
-Node: Array Data Types974132
-Ref: Array Data Types-Footnote-1976789
-Node: Array Functions976881
-Node: Flattening Arrays980735
-Node: Creating Arrays987622
-Node: Extension API Variables992389
-Node: Extension Versioning993025
-Node: Extension API Informational Variables994926
-Node: Extension API Boilerplate996014
-Node: Finding Extensions999830
-Node: Extension Example1000390
-Node: Internal File Description1001162
-Node: Internal File Ops1005229
-Ref: Internal File Ops-Footnote-11016887
-Node: Using Internal File Ops1017027
-Ref: Using Internal File Ops-Footnote-11019410
-Node: Extension Samples1019683
-Node: Extension Sample File Functions1021207
-Node: Extension Sample Fnmatch1028809
-Node: Extension Sample Fork1030291
-Node: Extension Sample Inplace1031504
-Node: Extension Sample Ord1033179
-Node: Extension Sample Readdir1034015
-Ref: table-readdir-file-types1034871
-Node: Extension Sample Revout1035682
-Node: Extension Sample Rev2way1036273
-Node: Extension Sample Read write array1037014
-Node: Extension Sample Readfile1038953
-Node: Extension Sample Time1040048
-Node: Extension Sample API Tests1041397
-Node: gawkextlib1041888
-Node: Extension summary1044538
-Node: Extension Exercises1048220
-Node: Language History1048942
-Node: V7/SVR3.11050599
-Node: SVR41052780
-Node: POSIX1054225
-Node: BTL1055614
-Node: POSIX/GNU1056348
-Node: Feature History1061977
-Node: Common Extensions1075068
-Node: Ranges and Locales1076392
-Ref: Ranges and Locales-Footnote-11081031
-Ref: Ranges and Locales-Footnote-21081058
-Ref: Ranges and Locales-Footnote-31081292
-Node: Contributors1081513
-Node: History summary1087053
-Node: Installation1088422
-Node: Gawk Distribution1089378
-Node: Getting1089862
-Node: Extracting1090686
-Node: Distribution contents1092328
-Node: Unix Installation1098098
-Node: Quick Installation1098715
-Node: Additional Configuration Options1101146
-Node: Configuration Philosophy1102886
-Node: Non-Unix Installation1105237
-Node: PC Installation1105695
-Node: PC Binary Installation1107021
-Node: PC Compiling1108869
-Ref: PC Compiling-Footnote-11111890
-Node: PC Testing1111995
-Node: PC Using1113171
-Node: Cygwin1117286
-Node: MSYS1118109
-Node: VMS Installation1118607
-Node: VMS Compilation1119399
-Ref: VMS Compilation-Footnote-11120621
-Node: VMS Dynamic Extensions1120679
-Node: VMS Installation Details1122363
-Node: VMS Running1124615
-Node: VMS GNV1127456
-Node: VMS Old Gawk1128190
-Node: Bugs1128660
-Node: Other Versions1132564
-Node: Installation summary1138777
-Node: Notes1139833
-Node: Compatibility Mode1140698
-Node: Additions1141480
-Node: Accessing The Source1142405
-Node: Adding Code1143841
-Node: New Ports1150013
-Node: Derived Files1154495
-Ref: Derived Files-Footnote-11159970
-Ref: Derived Files-Footnote-21160004
-Ref: Derived Files-Footnote-31160600
-Node: Future Extensions1160714
-Node: Implementation Limitations1161320
-Node: Extension Design1162568
-Node: Old Extension Problems1163722
-Ref: Old Extension Problems-Footnote-11165239
-Node: Extension New Mechanism Goals1165296
-Ref: Extension New Mechanism Goals-Footnote-11168656
-Node: Extension Other Design Decisions1168845
-Node: Extension Future Growth1170953
-Node: Old Extension Mechanism1171789
-Node: Notes summary1173551
-Node: Basic Concepts1174737
-Node: Basic High Level1175418
-Ref: figure-general-flow1175690
-Ref: figure-process-flow1176289
-Ref: Basic High Level-Footnote-11179518
-Node: Basic Data Typing1179703
-Node: Glossary1183031
-Node: Copying1208189
-Node: GNU Free Documentation License1245745
-Node: Index1270881
+Node: Advanced Features Summary804123
+Node: Internationalization806056
+Node: I18N and L10N807536
+Node: Explaining gettext808222
+Ref: Explaining gettext-Footnote-1813251
+Ref: Explaining gettext-Footnote-2813435
+Node: Programmer i18n813600
+Ref: Programmer i18n-Footnote-1818466
+Node: Translator i18n818515
+Node: String Extraction819309
+Ref: String Extraction-Footnote-1820440
+Node: Printf Ordering820526
+Ref: Printf Ordering-Footnote-1823312
+Node: I18N Portability823376
+Ref: I18N Portability-Footnote-1825825
+Node: I18N Example825888
+Ref: I18N Example-Footnote-1828688
+Node: Gawk I18N828760
+Node: I18N Summary829398
+Node: Debugger830737
+Node: Debugging831759
+Node: Debugging Concepts832200
+Node: Debugging Terms834057
+Node: Awk Debugging836632
+Node: Sample Debugging Session837524
+Node: Debugger Invocation838044
+Node: Finding The Bug839428
+Node: List of Debugger Commands845903
+Node: Breakpoint Control847235
+Node: Debugger Execution Control850927
+Node: Viewing And Changing Data854291
+Node: Execution Stack857656
+Node: Debugger Info859294
+Node: Miscellaneous Debugger Commands863311
+Node: Readline Support868503
+Node: Limitations869395
+Node: Debugging Summary871492
+Node: Arbitrary Precision Arithmetic872660
+Node: Computer Arithmetic874076
+Ref: table-numeric-ranges877677
+Ref: Computer Arithmetic-Footnote-1878536
+Node: Math Definitions878593
+Ref: table-ieee-formats881880
+Ref: Math Definitions-Footnote-1882484
+Node: MPFR features882589
+Node: FP Math Caution884260
+Ref: FP Math Caution-Footnote-1885310
+Node: Inexactness of computations885679
+Node: Inexact representation886627
+Node: Comparing FP Values887982
+Node: Errors accumulate889055
+Node: Getting Accuracy890488
+Node: Try To Round893147
+Node: Setting precision894046
+Ref: table-predefined-precision-strings894730
+Node: Setting the rounding mode896524
+Ref: table-gawk-rounding-modes896888
+Ref: Setting the rounding mode-Footnote-1900342
+Node: Arbitrary Precision Integers900521
+Ref: Arbitrary Precision Integers-Footnote-1905425
+Node: POSIX Floating Point Problems905574
+Ref: POSIX Floating Point Problems-Footnote-1909450
+Node: Floating point summary909488
+Node: Dynamic Extensions911680
+Node: Extension Intro913232
+Node: Plugin License914498
+Node: Extension Mechanism Outline915295
+Ref: figure-load-extension915723
+Ref: figure-register-new-function917203
+Ref: figure-call-new-function918207
+Node: Extension API Description920193
+Node: Extension API Functions Introduction921643
+Node: General Data Types926479
+Ref: General Data Types-Footnote-1932166
+Node: Memory Allocation Functions932465
+Ref: Memory Allocation Functions-Footnote-1935295
+Node: Constructor Functions935391
+Node: Registration Functions937125
+Node: Extension Functions937810
+Node: Exit Callback Functions940106
+Node: Extension Version String941354
+Node: Input Parsers942004
+Node: Output Wrappers951819
+Node: Two-way processors956335
+Node: Printing Messages958539
+Ref: Printing Messages-Footnote-1959616
+Node: Updating `ERRNO'959768
+Node: Requesting Values960508
+Ref: table-value-types-returned961236
+Node: Accessing Parameters962194
+Node: Symbol Table Access963425
+Node: Symbol table by name963939
+Node: Symbol table by cookie965919
+Ref: Symbol table by cookie-Footnote-1970058
+Node: Cached values970121
+Ref: Cached values-Footnote-1973625
+Node: Array Manipulation973716
+Ref: Array Manipulation-Footnote-1974814
+Node: Array Data Types974853
+Ref: Array Data Types-Footnote-1977510
+Node: Array Functions977602
+Node: Flattening Arrays981456
+Node: Creating Arrays988343
+Node: Extension API Variables993110
+Node: Extension Versioning993746
+Node: Extension API Informational Variables995647
+Node: Extension API Boilerplate996735
+Node: Finding Extensions1000551
+Node: Extension Example1001111
+Node: Internal File Description1001883
+Node: Internal File Ops1005950
+Ref: Internal File Ops-Footnote-11017608
+Node: Using Internal File Ops1017748
+Ref: Using Internal File Ops-Footnote-11020131
+Node: Extension Samples1020404
+Node: Extension Sample File Functions1021928
+Node: Extension Sample Fnmatch1029530
+Node: Extension Sample Fork1031012
+Node: Extension Sample Inplace1032225
+Node: Extension Sample Ord1033900
+Node: Extension Sample Readdir1034736
+Ref: table-readdir-file-types1035592
+Node: Extension Sample Revout1036403
+Node: Extension Sample Rev2way1036994
+Node: Extension Sample Read write array1037735
+Node: Extension Sample Readfile1039674
+Node: Extension Sample Time1040769
+Node: Extension Sample API Tests1042118
+Node: gawkextlib1042609
+Node: Extension summary1045259
+Node: Extension Exercises1048941
+Node: Language History1049663
+Node: V7/SVR3.11051320
+Node: SVR41053501
+Node: POSIX1054946
+Node: BTL1056335
+Node: POSIX/GNU1057069
+Node: Feature History1062698
+Node: Common Extensions1075789
+Node: Ranges and Locales1077113
+Ref: Ranges and Locales-Footnote-11081752
+Ref: Ranges and Locales-Footnote-21081779
+Ref: Ranges and Locales-Footnote-31082013
+Node: Contributors1082234
+Node: History summary1087774
+Node: Installation1089143
+Node: Gawk Distribution1090099
+Node: Getting1090583
+Node: Extracting1091407
+Node: Distribution contents1093049
+Node: Unix Installation1098819
+Node: Quick Installation1099436
+Node: Additional Configuration Options1101867
+Node: Configuration Philosophy1103607
+Node: Non-Unix Installation1105958
+Node: PC Installation1106416
+Node: PC Binary Installation1107742
+Node: PC Compiling1109590
+Ref: PC Compiling-Footnote-11112611
+Node: PC Testing1112716
+Node: PC Using1113892
+Node: Cygwin1118007
+Node: MSYS1118830
+Node: VMS Installation1119328
+Node: VMS Compilation1120120
+Ref: VMS Compilation-Footnote-11121342
+Node: VMS Dynamic Extensions1121400
+Node: VMS Installation Details1123084
+Node: VMS Running1125336
+Node: VMS GNV1128177
+Node: VMS Old Gawk1128911
+Node: Bugs1129381
+Node: Other Versions1133285
+Node: Installation summary1139498
+Node: Notes1140554
+Node: Compatibility Mode1141419
+Node: Additions1142201
+Node: Accessing The Source1143126
+Node: Adding Code1144562
+Node: New Ports1150734
+Node: Derived Files1155216
+Ref: Derived Files-Footnote-11160691
+Ref: Derived Files-Footnote-21160725
+Ref: Derived Files-Footnote-31161321
+Node: Future Extensions1161435
+Node: Implementation Limitations1162041
+Node: Extension Design1163289
+Node: Old Extension Problems1164443
+Ref: Old Extension Problems-Footnote-11165960
+Node: Extension New Mechanism Goals1166017
+Ref: Extension New Mechanism Goals-Footnote-11169377
+Node: Extension Other Design Decisions1169566
+Node: Extension Future Growth1171674
+Node: Old Extension Mechanism1172510
+Node: Notes summary1174272
+Node: Basic Concepts1175458
+Node: Basic High Level1176139
+Ref: figure-general-flow1176411
+Ref: figure-process-flow1177010
+Ref: Basic High Level-Footnote-11180239
+Node: Basic Data Typing1180424
+Node: Glossary1183752
+Node: Copying1208910
+Node: GNU Free Documentation License1246466
+Node: Index1271602

End Tag Table