gawk-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-585


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-585-g9478ffc
Date: Tue, 10 Feb 2015 20:17:45 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, gawk-4.1-stable has been updated
       via  9478ffc5b7ae6988bb109a7be9189ed02f3720e8 (commit)
      from  e59b2439f336e943a5eb7bd6a9926dc18dd974d8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=9478ffc5b7ae6988bb109a7be9189ed02f3720e8

commit 9478ffc5b7ae6988bb109a7be9189ed02f3720e8
Author: Arnold D. Robbins <address@hidden>
Date:   Tue Feb 10 22:17:32 2015 +0200

    Doc fixes.

diff --git a/doc/ChangeLog b/doc/ChangeLog
index b6de579..c62d302 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,7 @@
+2015-02-10         Arnold D. Robbins     <address@hidden>
+
+       * gawktexi.in: Minor fixes, O'Reilly fixes.
+
 2015-02-09         Arnold D. Robbins     <address@hidden>
 
        * gawktexi.in: Restore a lost sentence. O'Reilly fixes.
diff --git a/doc/gawk.info b/doc/gawk.info
index bf573a8..eb8d07b 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -1374,6 +1374,12 @@ also must acknowledge my gratitude to G-d, for the many 
opportunities
 He has sent my way, as well as for the gifts He has given me with which
 to take advantage of those opportunities.
 
+
+Arnold Robbins
+Nof Ayalon
+Israel
+February 2015
+
 
 File: gawk.info,  Node: Getting Started,  Next: Invoking Gawk,  Prev: Preface, 
 Up: Top
 
@@ -23028,8 +23034,8 @@ indicates what is in the `union'.
 
    Representing numbers is easy--the API uses a C `double'.  Strings
 require more work. Because `gawk' allows embedded NUL bytes in string
-values, a string must be represented as a pair containing a
-data-pointer and length. This is the `awk_string_t' type.
+values, a string must be represented as a pair containing a data
+pointer and length. This is the `awk_string_t' type.
 
    Identifiers (i.e., the names of global variables) can be associated
 with either scalar values or with arrays.  In addition, `gawk' provides
@@ -23041,12 +23047,12 @@ Manipulation::.
 of the `union' as if they were fields in a `struct'; this is a common
 coding practice in C.  Such code is easier to write and to read, but it
 remains _your_ responsibility to make sure that the `val_type' member
-correctly reflects the type of the value in the `awk_value_t'.
+correctly reflects the type of the value in the `awk_value_t' struct.
 
    Conceptually, the first three members of the `union' (number, string,
 and array) are all that is needed for working with `awk' values.
 However, because the API provides routines for accessing and changing
-the value of global scalar variables only by using the variable's name,
+the value of a global scalar variable only by using the variable's name,
 there is a performance penalty: `gawk' must find the variable each time
 it is accessed and changed.  This turns out to be a real issue, not
 just a theoretical one.
@@ -23055,17 +23061,19 @@ just a theoretical one.
 reading and/or changing the value of one or more scalar variables, you
 can obtain a "scalar cookie"(1) object for that variable, and then use
 the cookie for getting the variable's value or for changing the
-variable's value.  This is the `awk_scalar_t' type and `scalar_cookie'
-macro.  Given a scalar cookie, `gawk' can directly retrieve or modify
-the value, as required, without having to find it first.
+variable's value.  The `awk_scalar_t' type holds a scalar cookie, and
+the `scalar_cookie' macro provides access to the value of that type in
+the `awk_value_t' struct.  Given a scalar cookie, `gawk' can directly
+retrieve or modify the value, as required, without having to find it
+first.
 
    The `awk_value_cookie_t' type and `value_cookie' macro are similar.
 If you know that you wish to use the same numeric or string _value_ for
 one or more variables, you can create the value once, retaining a
 "value cookie" for it, and then pass in that value cookie whenever you
-wish to set the value of a variable.  This saves both storage space
-within the running `gawk' process as well as the time needed to create
-the value.
+wish to set the value of a variable.  This both storage space within
+the running `gawk' process and reduces the time needed to create the
+value.
 
    ---------- Footnotes ----------
 
@@ -34492,542 +34500,542 @@ Ref: Manual History-Footnote-167004
 Ref: Manual History-Footnote-267045
 Node: How To Contribute67119
 Node: Acknowledgments68248
-Node: Getting Started73065
-Node: Running gawk75504
-Node: One-shot76694
-Node: Read Terminal77958
-Node: Long79989
-Node: Executable Scripts81502
-Ref: Executable Scripts-Footnote-184291
-Node: Comments84394
-Node: Quoting86876
-Node: DOS Quoting92394
-Node: Sample Data Files93069
-Node: Very Simple95664
-Node: Two Rules100563
-Node: More Complex102449
-Node: Statements/Lines105311
-Ref: Statements/Lines-Footnote-1109766
-Node: Other Features110031
-Node: When110967
-Ref: When-Footnote-1112721
-Node: Intro Summary112786
-Node: Invoking Gawk113670
-Node: Command Line115184
-Node: Options115982
-Ref: Options-Footnote-1131904
-Ref: Options-Footnote-2132133
-Node: Other Arguments132158
-Node: Naming Standard Input135106
-Node: Environment Variables136199
-Node: AWKPATH Variable136757
-Ref: AWKPATH Variable-Footnote-1140054
-Ref: AWKPATH Variable-Footnote-2140099
-Node: AWKLIBPATH Variable140359
-Node: Other Environment Variables141502
-Node: Exit Status145260
-Node: Include Files145936
-Node: Loading Shared Libraries149525
-Node: Obsolete150952
-Node: Undocumented151644
-Node: Invoking Summary151911
-Node: Regexp153574
-Node: Regexp Usage155028
-Node: Escape Sequences157065
-Node: Regexp Operators163075
-Ref: Regexp Operators-Footnote-1170485
-Ref: Regexp Operators-Footnote-2170632
-Node: Bracket Expressions170730
-Ref: table-char-classes172745
-Node: Leftmost Longest175687
-Node: Computed Regexps176989
-Node: GNU Regexp Operators180418
-Node: Case-sensitivity184090
-Ref: Case-sensitivity-Footnote-1186975
-Ref: Case-sensitivity-Footnote-2187210
-Node: Regexp Summary187318
-Node: Reading Files188785
-Node: Records190878
-Node: awk split records191611
-Node: gawk split records196540
-Ref: gawk split records-Footnote-1201079
-Node: Fields201116
-Ref: Fields-Footnote-1203894
-Node: Nonconstant Fields203980
-Ref: Nonconstant Fields-Footnote-1206218
-Node: Changing Fields206421
-Node: Field Separators212352
-Node: Default Field Splitting215056
-Node: Regexp Field Splitting216173
-Node: Single Character Fields219523
-Node: Command Line Field Separator220582
-Node: Full Line Fields223799
-Ref: Full Line Fields-Footnote-1225320
-Ref: Full Line Fields-Footnote-2225366
-Node: Field Splitting Summary225467
-Node: Constant Size227541
-Node: Splitting By Content232124
-Ref: Splitting By Content-Footnote-1236089
-Node: Multiple Line236252
-Ref: Multiple Line-Footnote-1242133
-Node: Getline242312
-Node: Plain Getline244519
-Node: Getline/Variable247159
-Node: Getline/File248308
-Node: Getline/Variable/File249693
-Ref: Getline/Variable/File-Footnote-1251296
-Node: Getline/Pipe251383
-Node: Getline/Variable/Pipe254061
-Node: Getline/Coprocess255192
-Node: Getline/Variable/Coprocess256456
-Node: Getline Notes257195
-Node: Getline Summary259989
-Ref: table-getline-variants260401
-Node: Read Timeout261230
-Ref: Read Timeout-Footnote-1265067
-Node: Command-line directories265125
-Node: Input Summary266030
-Node: Input Exercises269415
-Node: Printing270143
-Node: Print271920
-Node: Print Examples273377
-Node: Output Separators276156
-Node: OFMT278174
-Node: Printf279529
-Node: Basic Printf280314
-Node: Control Letters281886
-Node: Format Modifiers285871
-Node: Printf Examples291881
-Node: Redirection294367
-Node: Special FD301205
-Ref: Special FD-Footnote-1304371
-Node: Special Files304445
-Node: Other Inherited Files305062
-Node: Special Network306062
-Node: Special Caveats306924
-Node: Close Files And Pipes307873
-Ref: Close Files And Pipes-Footnote-1315064
-Ref: Close Files And Pipes-Footnote-2315212
-Node: Output Summary315362
-Node: Output Exercises316360
-Node: Expressions317040
-Node: Values318229
-Node: Constants318906
-Node: Scalar Constants319597
-Ref: Scalar Constants-Footnote-1320459
-Node: Nondecimal-numbers320709
-Node: Regexp Constants323719
-Node: Using Constant Regexps324245
-Node: Variables327408
-Node: Using Variables328065
-Node: Assignment Options329976
-Node: Conversion331851
-Node: Strings And Numbers332375
-Ref: Strings And Numbers-Footnote-1335440
-Node: Locale influences conversions335549
-Ref: table-locale-affects338295
-Node: All Operators338887
-Node: Arithmetic Ops339516
-Node: Concatenation342021
-Ref: Concatenation-Footnote-1344840
-Node: Assignment Ops344947
-Ref: table-assign-ops349926
-Node: Increment Ops351236
-Node: Truth Values and Conditions354667
-Node: Truth Values355750
-Node: Typing and Comparison356799
-Node: Variable Typing357615
-Node: Comparison Operators361282
-Ref: table-relational-ops361692
-Node: POSIX String Comparison365187
-Ref: POSIX String Comparison-Footnote-1366259
-Node: Boolean Ops366398
-Ref: Boolean Ops-Footnote-1370876
-Node: Conditional Exp370967
-Node: Function Calls372705
-Node: Precedence376585
-Node: Locales380245
-Node: Expressions Summary381877
-Node: Patterns and Actions384448
-Node: Pattern Overview385568
-Node: Regexp Patterns387247
-Node: Expression Patterns387790
-Node: Ranges391570
-Node: BEGIN/END394677
-Node: Using BEGIN/END395438
-Ref: Using BEGIN/END-Footnote-1398174
-Node: I/O And BEGIN/END398280
-Node: BEGINFILE/ENDFILE400595
-Node: Empty403492
-Node: Using Shell Variables403809
-Node: Action Overview406082
-Node: Statements408408
-Node: If Statement410256
-Node: While Statement411751
-Node: Do Statement413779
-Node: For Statement414927
-Node: Switch Statement418085
-Node: Break Statement420467
-Node: Continue Statement422508
-Node: Next Statement424335
-Node: Nextfile Statement426716
-Node: Exit Statement429344
-Node: Built-in Variables431755
-Node: User-modified432888
-Ref: User-modified-Footnote-1440591
-Node: Auto-set440653
-Ref: Auto-set-Footnote-1453705
-Ref: Auto-set-Footnote-2453910
-Node: ARGC and ARGV453966
-Node: Pattern Action Summary458184
-Node: Arrays460617
-Node: Array Basics461946
-Node: Array Intro462790
-Ref: figure-array-elements464724
-Ref: Array Intro-Footnote-1467344
-Node: Reference to Elements467472
-Node: Assigning Elements469934
-Node: Array Example470425
-Node: Scanning an Array472184
-Node: Controlling Scanning475204
-Ref: Controlling Scanning-Footnote-1480598
-Node: Numeric Array Subscripts480914
-Node: Uninitialized Subscripts483099
-Node: Delete484716
-Ref: Delete-Footnote-1487465
-Node: Multidimensional487522
-Node: Multiscanning490619
-Node: Arrays of Arrays492208
-Node: Arrays Summary496962
-Node: Functions499053
-Node: Built-in500092
-Node: Calling Built-in501170
-Node: Numeric Functions503165
-Ref: Numeric Functions-Footnote-1507181
-Ref: Numeric Functions-Footnote-2507538
-Ref: Numeric Functions-Footnote-3507586
-Node: String Functions507858
-Ref: String Functions-Footnote-1531359
-Ref: String Functions-Footnote-2531488
-Ref: String Functions-Footnote-3531736
-Node: Gory Details531823
-Ref: table-sub-escapes533604
-Ref: table-sub-proposed535119
-Ref: table-posix-sub536481
-Ref: table-gensub-escapes538018
-Ref: Gory Details-Footnote-1538851
-Node: I/O Functions539002
-Ref: I/O Functions-Footnote-1546238
-Node: Time Functions546385
-Ref: Time Functions-Footnote-1556894
-Ref: Time Functions-Footnote-2556962
-Ref: Time Functions-Footnote-3557120
-Ref: Time Functions-Footnote-4557231
-Ref: Time Functions-Footnote-5557343
-Ref: Time Functions-Footnote-6557570
-Node: Bitwise Functions557836
-Ref: table-bitwise-ops558398
-Ref: Bitwise Functions-Footnote-1562726
-Node: Type Functions562898
-Node: I18N Functions564050
-Node: User-defined565697
-Node: Definition Syntax566502
-Ref: Definition Syntax-Footnote-1572161
-Node: Function Example572232
-Ref: Function Example-Footnote-1575153
-Node: Function Caveats575175
-Node: Calling A Function575693
-Node: Variable Scope576651
-Node: Pass By Value/Reference579644
-Node: Return Statement583141
-Node: Dynamic Typing586120
-Node: Indirect Calls587049
-Ref: Indirect Calls-Footnote-1598355
-Node: Functions Summary598483
-Node: Library Functions601185
-Ref: Library Functions-Footnote-1604793
-Ref: Library Functions-Footnote-2604936
-Node: Library Names605107
-Ref: Library Names-Footnote-1608565
-Ref: Library Names-Footnote-2608788
-Node: General Functions608874
-Node: Strtonum Function609977
-Node: Assert Function612999
-Node: Round Function616323
-Node: Cliff Random Function617864
-Node: Ordinal Functions618880
-Ref: Ordinal Functions-Footnote-1621943
-Ref: Ordinal Functions-Footnote-2622195
-Node: Join Function622406
-Ref: Join Function-Footnote-1624176
-Node: Getlocaltime Function624376
-Node: Readfile Function628120
-Node: Shell Quoting630092
-Node: Data File Management631493
-Node: Filetrans Function632125
-Node: Rewind Function636221
-Node: File Checking637607
-Ref: File Checking-Footnote-1638940
-Node: Empty Files639141
-Node: Ignoring Assigns641120
-Node: Getopt Function642670
-Ref: Getopt Function-Footnote-1654134
-Node: Passwd Functions654334
-Ref: Passwd Functions-Footnote-1663174
-Node: Group Functions663262
-Ref: Group Functions-Footnote-1671159
-Node: Walking Arrays671364
-Node: Library Functions Summary672964
-Node: Library Exercises674368
-Node: Sample Programs675648
-Node: Running Examples676418
-Node: Clones677146
-Node: Cut Program678370
-Node: Egrep Program688090
-Ref: Egrep Program-Footnote-1695593
-Node: Id Program695703
-Node: Split Program699379
-Ref: Split Program-Footnote-1702833
-Node: Tee Program702961
-Node: Uniq Program705750
-Node: Wc Program713169
-Ref: Wc Program-Footnote-1717419
-Node: Miscellaneous Programs717513
-Node: Dupword Program718726
-Node: Alarm Program720757
-Node: Translate Program725562
-Ref: Translate Program-Footnote-1730125
-Node: Labels Program730395
-Ref: Labels Program-Footnote-1733746
-Node: Word Sorting733830
-Node: History Sorting737900
-Node: Extract Program739735
-Node: Simple Sed747259
-Node: Igawk Program750329
-Ref: Igawk Program-Footnote-1764655
-Ref: Igawk Program-Footnote-2764856
-Ref: Igawk Program-Footnote-3764978
-Node: Anagram Program765093
-Node: Signature Program768154
-Node: Programs Summary769401
-Node: Programs Exercises770622
-Ref: Programs Exercises-Footnote-1774753
-Node: Advanced Features774844
-Node: Nondecimal Data776826
-Node: Array Sorting778416
-Node: Controlling Array Traversal779116
-Ref: Controlling Array Traversal-Footnote-1787482
-Node: Array Sorting Functions787600
-Ref: Array Sorting Functions-Footnote-1791486
-Node: Two-way I/O791682
-Ref: Two-way I/O-Footnote-1796627
-Ref: Two-way I/O-Footnote-2796813
-Node: TCP/IP Networking796895
-Node: Profiling799767
-Node: Advanced Features Summary807308
-Node: Internationalization809241
-Node: I18N and L10N810721
-Node: Explaining gettext811407
-Ref: Explaining gettext-Footnote-1816432
-Ref: Explaining gettext-Footnote-2816616
-Node: Programmer i18n816781
-Ref: Programmer i18n-Footnote-1821657
-Node: Translator i18n821706
-Node: String Extraction822500
-Ref: String Extraction-Footnote-1823631
-Node: Printf Ordering823717
-Ref: Printf Ordering-Footnote-1826503
-Node: I18N Portability826567
-Ref: I18N Portability-Footnote-1829023
-Node: I18N Example829086
-Ref: I18N Example-Footnote-1831889
-Node: Gawk I18N831961
-Node: I18N Summary832605
-Node: Debugger833945
-Node: Debugging834967
-Node: Debugging Concepts835408
-Node: Debugging Terms837218
-Node: Awk Debugging839790
-Node: Sample Debugging Session840696
-Node: Debugger Invocation841230
-Node: Finding The Bug842615
-Node: List of Debugger Commands849094
-Node: Breakpoint Control850426
-Node: Debugger Execution Control854103
-Node: Viewing And Changing Data857462
-Node: Execution Stack860838
-Node: Debugger Info862473
-Node: Miscellaneous Debugger Commands866518
-Node: Readline Support871519
-Node: Limitations872413
-Node: Debugging Summary874528
-Node: Arbitrary Precision Arithmetic875702
-Node: Computer Arithmetic877118
-Ref: table-numeric-ranges880717
-Ref: Computer Arithmetic-Footnote-1881241
-Node: Math Definitions881298
-Ref: table-ieee-formats884593
-Ref: Math Definitions-Footnote-1885197
-Node: MPFR features885302
-Node: FP Math Caution886973
-Ref: FP Math Caution-Footnote-1888023
-Node: Inexactness of computations888392
-Node: Inexact representation889351
-Node: Comparing FP Values890709
-Node: Errors accumulate891791
-Node: Getting Accuracy893223
-Node: Try To Round895927
-Node: Setting precision896826
-Ref: table-predefined-precision-strings897510
-Node: Setting the rounding mode899339
-Ref: table-gawk-rounding-modes899703
-Ref: Setting the rounding mode-Footnote-1903155
-Node: Arbitrary Precision Integers903334
-Ref: Arbitrary Precision Integers-Footnote-1906318
-Node: POSIX Floating Point Problems906467
-Ref: POSIX Floating Point Problems-Footnote-1910346
-Node: Floating point summary910384
-Node: Dynamic Extensions912580
-Node: Extension Intro914132
-Node: Plugin License915397
-Node: Extension Mechanism Outline916194
-Ref: figure-load-extension916622
-Ref: figure-register-new-function918102
-Ref: figure-call-new-function919106
-Node: Extension API Description921093
-Node: Extension API Functions Introduction922543
-Node: General Data Types927364
-Ref: General Data Types-Footnote-1933171
-Node: Memory Allocation Functions933470
-Ref: Memory Allocation Functions-Footnote-1936309
-Node: Constructor Functions936405
-Node: Registration Functions938139
-Node: Extension Functions938824
-Node: Exit Callback Functions941121
-Node: Extension Version String942369
-Node: Input Parsers943034
-Node: Output Wrappers952913
-Node: Two-way processors957428
-Node: Printing Messages959632
-Ref: Printing Messages-Footnote-1960708
-Node: Updating `ERRNO'960860
-Node: Requesting Values961600
-Ref: table-value-types-returned962328
-Node: Accessing Parameters963285
-Node: Symbol Table Access964516
-Node: Symbol table by name965030
-Node: Symbol table by cookie967011
-Ref: Symbol table by cookie-Footnote-1971155
-Node: Cached values971218
-Ref: Cached values-Footnote-1974717
-Node: Array Manipulation974808
-Ref: Array Manipulation-Footnote-1975906
-Node: Array Data Types975943
-Ref: Array Data Types-Footnote-1978598
-Node: Array Functions978690
-Node: Flattening Arrays982544
-Node: Creating Arrays989436
-Node: Extension API Variables994207
-Node: Extension Versioning994843
-Node: Extension API Informational Variables996744
-Node: Extension API Boilerplate997809
-Node: Finding Extensions1001618
-Node: Extension Example1002178
-Node: Internal File Description1002950
-Node: Internal File Ops1007017
-Ref: Internal File Ops-Footnote-11018687
-Node: Using Internal File Ops1018827
-Ref: Using Internal File Ops-Footnote-11021210
-Node: Extension Samples1021483
-Node: Extension Sample File Functions1023009
-Node: Extension Sample Fnmatch1030647
-Node: Extension Sample Fork1032138
-Node: Extension Sample Inplace1033353
-Node: Extension Sample Ord1035028
-Node: Extension Sample Readdir1035864
-Ref: table-readdir-file-types1036740
-Node: Extension Sample Revout1037551
-Node: Extension Sample Rev2way1038141
-Node: Extension Sample Read write array1038881
-Node: Extension Sample Readfile1040821
-Node: Extension Sample Time1041916
-Node: Extension Sample API Tests1043265
-Node: gawkextlib1043756
-Node: Extension summary1046414
-Node: Extension Exercises1050103
-Node: Language History1050825
-Node: V7/SVR3.11052481
-Node: SVR41054662
-Node: POSIX1056107
-Node: BTL1057496
-Node: POSIX/GNU1058230
-Node: Feature History1063794
-Node: Common Extensions1076892
-Node: Ranges and Locales1078216
-Ref: Ranges and Locales-Footnote-11082834
-Ref: Ranges and Locales-Footnote-21082861
-Ref: Ranges and Locales-Footnote-31083095
-Node: Contributors1083316
-Node: History summary1088857
-Node: Installation1090227
-Node: Gawk Distribution1091173
-Node: Getting1091657
-Node: Extracting1092480
-Node: Distribution contents1094115
-Node: Unix Installation1099832
-Node: Quick Installation1100449
-Node: Additional Configuration Options1102873
-Node: Configuration Philosophy1104611
-Node: Non-Unix Installation1106980
-Node: PC Installation1107438
-Node: PC Binary Installation1108757
-Node: PC Compiling1110605
-Ref: PC Compiling-Footnote-11113626
-Node: PC Testing1113735
-Node: PC Using1114911
-Node: Cygwin1119026
-Node: MSYS1119849
-Node: VMS Installation1120349
-Node: VMS Compilation1121141
-Ref: VMS Compilation-Footnote-11122363
-Node: VMS Dynamic Extensions1122421
-Node: VMS Installation Details1124105
-Node: VMS Running1126357
-Node: VMS GNV1129193
-Node: VMS Old Gawk1129927
-Node: Bugs1130397
-Node: Other Versions1134280
-Node: Installation summary1140704
-Node: Notes1141760
-Node: Compatibility Mode1142625
-Node: Additions1143407
-Node: Accessing The Source1144332
-Node: Adding Code1145767
-Node: New Ports1151924
-Node: Derived Files1156406
-Ref: Derived Files-Footnote-11161881
-Ref: Derived Files-Footnote-21161915
-Ref: Derived Files-Footnote-31162511
-Node: Future Extensions1162625
-Node: Implementation Limitations1163231
-Node: Extension Design1164479
-Node: Old Extension Problems1165633
-Ref: Old Extension Problems-Footnote-11167150
-Node: Extension New Mechanism Goals1167207
-Ref: Extension New Mechanism Goals-Footnote-11170567
-Node: Extension Other Design Decisions1170756
-Node: Extension Future Growth1172864
-Node: Old Extension Mechanism1173700
-Node: Notes summary1175462
-Node: Basic Concepts1176648
-Node: Basic High Level1177329
-Ref: figure-general-flow1177601
-Ref: figure-process-flow1178200
-Ref: Basic High Level-Footnote-11181429
-Node: Basic Data Typing1181614
-Node: Glossary1184942
-Node: Copying1216871
-Node: GNU Free Documentation License1254427
-Node: Index1279563
+Node: Getting Started73114
+Node: Running gawk75553
+Node: One-shot76743
+Node: Read Terminal78007
+Node: Long80038
+Node: Executable Scripts81551
+Ref: Executable Scripts-Footnote-184340
+Node: Comments84443
+Node: Quoting86925
+Node: DOS Quoting92443
+Node: Sample Data Files93118
+Node: Very Simple95713
+Node: Two Rules100612
+Node: More Complex102498
+Node: Statements/Lines105360
+Ref: Statements/Lines-Footnote-1109815
+Node: Other Features110080
+Node: When111016
+Ref: When-Footnote-1112770
+Node: Intro Summary112835
+Node: Invoking Gawk113719
+Node: Command Line115233
+Node: Options116031
+Ref: Options-Footnote-1131953
+Ref: Options-Footnote-2132182
+Node: Other Arguments132207
+Node: Naming Standard Input135155
+Node: Environment Variables136248
+Node: AWKPATH Variable136806
+Ref: AWKPATH Variable-Footnote-1140103
+Ref: AWKPATH Variable-Footnote-2140148
+Node: AWKLIBPATH Variable140408
+Node: Other Environment Variables141551
+Node: Exit Status145309
+Node: Include Files145985
+Node: Loading Shared Libraries149574
+Node: Obsolete151001
+Node: Undocumented151693
+Node: Invoking Summary151960
+Node: Regexp153623
+Node: Regexp Usage155077
+Node: Escape Sequences157114
+Node: Regexp Operators163124
+Ref: Regexp Operators-Footnote-1170534
+Ref: Regexp Operators-Footnote-2170681
+Node: Bracket Expressions170779
+Ref: table-char-classes172794
+Node: Leftmost Longest175736
+Node: Computed Regexps177038
+Node: GNU Regexp Operators180467
+Node: Case-sensitivity184139
+Ref: Case-sensitivity-Footnote-1187024
+Ref: Case-sensitivity-Footnote-2187259
+Node: Regexp Summary187367
+Node: Reading Files188834
+Node: Records190927
+Node: awk split records191660
+Node: gawk split records196589
+Ref: gawk split records-Footnote-1201128
+Node: Fields201165
+Ref: Fields-Footnote-1203943
+Node: Nonconstant Fields204029
+Ref: Nonconstant Fields-Footnote-1206267
+Node: Changing Fields206470
+Node: Field Separators212401
+Node: Default Field Splitting215105
+Node: Regexp Field Splitting216222
+Node: Single Character Fields219572
+Node: Command Line Field Separator220631
+Node: Full Line Fields223848
+Ref: Full Line Fields-Footnote-1225369
+Ref: Full Line Fields-Footnote-2225415
+Node: Field Splitting Summary225516
+Node: Constant Size227590
+Node: Splitting By Content232173
+Ref: Splitting By Content-Footnote-1236138
+Node: Multiple Line236301
+Ref: Multiple Line-Footnote-1242182
+Node: Getline242361
+Node: Plain Getline244568
+Node: Getline/Variable247208
+Node: Getline/File248357
+Node: Getline/Variable/File249742
+Ref: Getline/Variable/File-Footnote-1251345
+Node: Getline/Pipe251432
+Node: Getline/Variable/Pipe254110
+Node: Getline/Coprocess255241
+Node: Getline/Variable/Coprocess256505
+Node: Getline Notes257244
+Node: Getline Summary260038
+Ref: table-getline-variants260450
+Node: Read Timeout261279
+Ref: Read Timeout-Footnote-1265116
+Node: Command-line directories265174
+Node: Input Summary266079
+Node: Input Exercises269464
+Node: Printing270192
+Node: Print271969
+Node: Print Examples273426
+Node: Output Separators276205
+Node: OFMT278223
+Node: Printf279578
+Node: Basic Printf280363
+Node: Control Letters281935
+Node: Format Modifiers285920
+Node: Printf Examples291930
+Node: Redirection294416
+Node: Special FD301254
+Ref: Special FD-Footnote-1304420
+Node: Special Files304494
+Node: Other Inherited Files305111
+Node: Special Network306111
+Node: Special Caveats306973
+Node: Close Files And Pipes307922
+Ref: Close Files And Pipes-Footnote-1315113
+Ref: Close Files And Pipes-Footnote-2315261
+Node: Output Summary315411
+Node: Output Exercises316409
+Node: Expressions317089
+Node: Values318278
+Node: Constants318955
+Node: Scalar Constants319646
+Ref: Scalar Constants-Footnote-1320508
+Node: Nondecimal-numbers320758
+Node: Regexp Constants323768
+Node: Using Constant Regexps324294
+Node: Variables327457
+Node: Using Variables328114
+Node: Assignment Options330025
+Node: Conversion331900
+Node: Strings And Numbers332424
+Ref: Strings And Numbers-Footnote-1335489
+Node: Locale influences conversions335598
+Ref: table-locale-affects338344
+Node: All Operators338936
+Node: Arithmetic Ops339565
+Node: Concatenation342070
+Ref: Concatenation-Footnote-1344889
+Node: Assignment Ops344996
+Ref: table-assign-ops349975
+Node: Increment Ops351285
+Node: Truth Values and Conditions354716
+Node: Truth Values355799
+Node: Typing and Comparison356848
+Node: Variable Typing357664
+Node: Comparison Operators361331
+Ref: table-relational-ops361741
+Node: POSIX String Comparison365236
+Ref: POSIX String Comparison-Footnote-1366308
+Node: Boolean Ops366447
+Ref: Boolean Ops-Footnote-1370925
+Node: Conditional Exp371016
+Node: Function Calls372754
+Node: Precedence376634
+Node: Locales380294
+Node: Expressions Summary381926
+Node: Patterns and Actions384497
+Node: Pattern Overview385617
+Node: Regexp Patterns387296
+Node: Expression Patterns387839
+Node: Ranges391619
+Node: BEGIN/END394726
+Node: Using BEGIN/END395487
+Ref: Using BEGIN/END-Footnote-1398223
+Node: I/O And BEGIN/END398329
+Node: BEGINFILE/ENDFILE400644
+Node: Empty403541
+Node: Using Shell Variables403858
+Node: Action Overview406131
+Node: Statements408457
+Node: If Statement410305
+Node: While Statement411800
+Node: Do Statement413828
+Node: For Statement414976
+Node: Switch Statement418134
+Node: Break Statement420516
+Node: Continue Statement422557
+Node: Next Statement424384
+Node: Nextfile Statement426765
+Node: Exit Statement429393
+Node: Built-in Variables431804
+Node: User-modified432937
+Ref: User-modified-Footnote-1440640
+Node: Auto-set440702
+Ref: Auto-set-Footnote-1453754
+Ref: Auto-set-Footnote-2453959
+Node: ARGC and ARGV454015
+Node: Pattern Action Summary458233
+Node: Arrays460666
+Node: Array Basics461995
+Node: Array Intro462839
+Ref: figure-array-elements464773
+Ref: Array Intro-Footnote-1467393
+Node: Reference to Elements467521
+Node: Assigning Elements469983
+Node: Array Example470474
+Node: Scanning an Array472233
+Node: Controlling Scanning475253
+Ref: Controlling Scanning-Footnote-1480647
+Node: Numeric Array Subscripts480963
+Node: Uninitialized Subscripts483148
+Node: Delete484765
+Ref: Delete-Footnote-1487514
+Node: Multidimensional487571
+Node: Multiscanning490668
+Node: Arrays of Arrays492257
+Node: Arrays Summary497011
+Node: Functions499102
+Node: Built-in500141
+Node: Calling Built-in501219
+Node: Numeric Functions503214
+Ref: Numeric Functions-Footnote-1507230
+Ref: Numeric Functions-Footnote-2507587
+Ref: Numeric Functions-Footnote-3507635
+Node: String Functions507907
+Ref: String Functions-Footnote-1531408
+Ref: String Functions-Footnote-2531537
+Ref: String Functions-Footnote-3531785
+Node: Gory Details531872
+Ref: table-sub-escapes533653
+Ref: table-sub-proposed535168
+Ref: table-posix-sub536530
+Ref: table-gensub-escapes538067
+Ref: Gory Details-Footnote-1538900
+Node: I/O Functions539051
+Ref: I/O Functions-Footnote-1546287
+Node: Time Functions546434
+Ref: Time Functions-Footnote-1556943
+Ref: Time Functions-Footnote-2557011
+Ref: Time Functions-Footnote-3557169
+Ref: Time Functions-Footnote-4557280
+Ref: Time Functions-Footnote-5557392
+Ref: Time Functions-Footnote-6557619
+Node: Bitwise Functions557885
+Ref: table-bitwise-ops558447
+Ref: Bitwise Functions-Footnote-1562775
+Node: Type Functions562947
+Node: I18N Functions564099
+Node: User-defined565746
+Node: Definition Syntax566551
+Ref: Definition Syntax-Footnote-1572210
+Node: Function Example572281
+Ref: Function Example-Footnote-1575202
+Node: Function Caveats575224
+Node: Calling A Function575742
+Node: Variable Scope576700
+Node: Pass By Value/Reference579693
+Node: Return Statement583190
+Node: Dynamic Typing586169
+Node: Indirect Calls587098
+Ref: Indirect Calls-Footnote-1598404
+Node: Functions Summary598532
+Node: Library Functions601234
+Ref: Library Functions-Footnote-1604842
+Ref: Library Functions-Footnote-2604985
+Node: Library Names605156
+Ref: Library Names-Footnote-1608614
+Ref: Library Names-Footnote-2608837
+Node: General Functions608923
+Node: Strtonum Function610026
+Node: Assert Function613048
+Node: Round Function616372
+Node: Cliff Random Function617913
+Node: Ordinal Functions618929
+Ref: Ordinal Functions-Footnote-1621992
+Ref: Ordinal Functions-Footnote-2622244
+Node: Join Function622455
+Ref: Join Function-Footnote-1624225
+Node: Getlocaltime Function624425
+Node: Readfile Function628169
+Node: Shell Quoting630141
+Node: Data File Management631542
+Node: Filetrans Function632174
+Node: Rewind Function636270
+Node: File Checking637656
+Ref: File Checking-Footnote-1638989
+Node: Empty Files639190
+Node: Ignoring Assigns641169
+Node: Getopt Function642719
+Ref: Getopt Function-Footnote-1654183
+Node: Passwd Functions654383
+Ref: Passwd Functions-Footnote-1663223
+Node: Group Functions663311
+Ref: Group Functions-Footnote-1671208
+Node: Walking Arrays671413
+Node: Library Functions Summary673013
+Node: Library Exercises674417
+Node: Sample Programs675697
+Node: Running Examples676467
+Node: Clones677195
+Node: Cut Program678419
+Node: Egrep Program688139
+Ref: Egrep Program-Footnote-1695642
+Node: Id Program695752
+Node: Split Program699428
+Ref: Split Program-Footnote-1702882
+Node: Tee Program703010
+Node: Uniq Program705799
+Node: Wc Program713218
+Ref: Wc Program-Footnote-1717468
+Node: Miscellaneous Programs717562
+Node: Dupword Program718775
+Node: Alarm Program720806
+Node: Translate Program725611
+Ref: Translate Program-Footnote-1730174
+Node: Labels Program730444
+Ref: Labels Program-Footnote-1733795
+Node: Word Sorting733879
+Node: History Sorting737949
+Node: Extract Program739784
+Node: Simple Sed747308
+Node: Igawk Program750378
+Ref: Igawk Program-Footnote-1764704
+Ref: Igawk Program-Footnote-2764905
+Ref: Igawk Program-Footnote-3765027
+Node: Anagram Program765142
+Node: Signature Program768203
+Node: Programs Summary769450
+Node: Programs Exercises770671
+Ref: Programs Exercises-Footnote-1774802
+Node: Advanced Features774893
+Node: Nondecimal Data776875
+Node: Array Sorting778465
+Node: Controlling Array Traversal779165
+Ref: Controlling Array Traversal-Footnote-1787531
+Node: Array Sorting Functions787649
+Ref: Array Sorting Functions-Footnote-1791535
+Node: Two-way I/O791731
+Ref: Two-way I/O-Footnote-1796676
+Ref: Two-way I/O-Footnote-2796862
+Node: TCP/IP Networking796944
+Node: Profiling799816
+Node: Advanced Features Summary807357
+Node: Internationalization809290
+Node: I18N and L10N810770
+Node: Explaining gettext811456
+Ref: Explaining gettext-Footnote-1816481
+Ref: Explaining gettext-Footnote-2816665
+Node: Programmer i18n816830
+Ref: Programmer i18n-Footnote-1821706
+Node: Translator i18n821755
+Node: String Extraction822549
+Ref: String Extraction-Footnote-1823680
+Node: Printf Ordering823766
+Ref: Printf Ordering-Footnote-1826552
+Node: I18N Portability826616
+Ref: I18N Portability-Footnote-1829072
+Node: I18N Example829135
+Ref: I18N Example-Footnote-1831938
+Node: Gawk I18N832010
+Node: I18N Summary832654
+Node: Debugger833994
+Node: Debugging835016
+Node: Debugging Concepts835457
+Node: Debugging Terms837267
+Node: Awk Debugging839839
+Node: Sample Debugging Session840745
+Node: Debugger Invocation841279
+Node: Finding The Bug842664
+Node: List of Debugger Commands849143
+Node: Breakpoint Control850475
+Node: Debugger Execution Control854152
+Node: Viewing And Changing Data857511
+Node: Execution Stack860887
+Node: Debugger Info862522
+Node: Miscellaneous Debugger Commands866567
+Node: Readline Support871568
+Node: Limitations872462
+Node: Debugging Summary874577
+Node: Arbitrary Precision Arithmetic875751
+Node: Computer Arithmetic877167
+Ref: table-numeric-ranges880766
+Ref: Computer Arithmetic-Footnote-1881290
+Node: Math Definitions881347
+Ref: table-ieee-formats884642
+Ref: Math Definitions-Footnote-1885246
+Node: MPFR features885351
+Node: FP Math Caution887022
+Ref: FP Math Caution-Footnote-1888072
+Node: Inexactness of computations888441
+Node: Inexact representation889400
+Node: Comparing FP Values890758
+Node: Errors accumulate891840
+Node: Getting Accuracy893272
+Node: Try To Round895976
+Node: Setting precision896875
+Ref: table-predefined-precision-strings897559
+Node: Setting the rounding mode899388
+Ref: table-gawk-rounding-modes899752
+Ref: Setting the rounding mode-Footnote-1903204
+Node: Arbitrary Precision Integers903383
+Ref: Arbitrary Precision Integers-Footnote-1906367
+Node: POSIX Floating Point Problems906516
+Ref: POSIX Floating Point Problems-Footnote-1910395
+Node: Floating point summary910433
+Node: Dynamic Extensions912629
+Node: Extension Intro914181
+Node: Plugin License915446
+Node: Extension Mechanism Outline916243
+Ref: figure-load-extension916671
+Ref: figure-register-new-function918151
+Ref: figure-call-new-function919155
+Node: Extension API Description921142
+Node: Extension API Functions Introduction922592
+Node: General Data Types927413
+Ref: General Data Types-Footnote-1933312
+Node: Memory Allocation Functions933611
+Ref: Memory Allocation Functions-Footnote-1936450
+Node: Constructor Functions936546
+Node: Registration Functions938280
+Node: Extension Functions938965
+Node: Exit Callback Functions941262
+Node: Extension Version String942510
+Node: Input Parsers943175
+Node: Output Wrappers953054
+Node: Two-way processors957569
+Node: Printing Messages959773
+Ref: Printing Messages-Footnote-1960849
+Node: Updating `ERRNO'961001
+Node: Requesting Values961741
+Ref: table-value-types-returned962469
+Node: Accessing Parameters963426
+Node: Symbol Table Access964657
+Node: Symbol table by name965171
+Node: Symbol table by cookie967152
+Ref: Symbol table by cookie-Footnote-1971296
+Node: Cached values971359
+Ref: Cached values-Footnote-1974858
+Node: Array Manipulation974949
+Ref: Array Manipulation-Footnote-1976047
+Node: Array Data Types976084
+Ref: Array Data Types-Footnote-1978739
+Node: Array Functions978831
+Node: Flattening Arrays982685
+Node: Creating Arrays989577
+Node: Extension API Variables994348
+Node: Extension Versioning994984
+Node: Extension API Informational Variables996885
+Node: Extension API Boilerplate997950
+Node: Finding Extensions1001759
+Node: Extension Example1002319
+Node: Internal File Description1003091
+Node: Internal File Ops1007158
+Ref: Internal File Ops-Footnote-11018828
+Node: Using Internal File Ops1018968
+Ref: Using Internal File Ops-Footnote-11021351
+Node: Extension Samples1021624
+Node: Extension Sample File Functions1023150
+Node: Extension Sample Fnmatch1030788
+Node: Extension Sample Fork1032279
+Node: Extension Sample Inplace1033494
+Node: Extension Sample Ord1035169
+Node: Extension Sample Readdir1036005
+Ref: table-readdir-file-types1036881
+Node: Extension Sample Revout1037692
+Node: Extension Sample Rev2way1038282
+Node: Extension Sample Read write array1039022
+Node: Extension Sample Readfile1040962
+Node: Extension Sample Time1042057
+Node: Extension Sample API Tests1043406
+Node: gawkextlib1043897
+Node: Extension summary1046555
+Node: Extension Exercises1050244
+Node: Language History1050966
+Node: V7/SVR3.11052622
+Node: SVR41054803
+Node: POSIX1056248
+Node: BTL1057637
+Node: POSIX/GNU1058371
+Node: Feature History1063935
+Node: Common Extensions1077033
+Node: Ranges and Locales1078357
+Ref: Ranges and Locales-Footnote-11082975
+Ref: Ranges and Locales-Footnote-21083002
+Ref: Ranges and Locales-Footnote-31083236
+Node: Contributors1083457
+Node: History summary1088998
+Node: Installation1090368
+Node: Gawk Distribution1091314
+Node: Getting1091798
+Node: Extracting1092621
+Node: Distribution contents1094256
+Node: Unix Installation1099973
+Node: Quick Installation1100590
+Node: Additional Configuration Options1103014
+Node: Configuration Philosophy1104752
+Node: Non-Unix Installation1107121
+Node: PC Installation1107579
+Node: PC Binary Installation1108898
+Node: PC Compiling1110746
+Ref: PC Compiling-Footnote-11113767
+Node: PC Testing1113876
+Node: PC Using1115052
+Node: Cygwin1119167
+Node: MSYS1119990
+Node: VMS Installation1120490
+Node: VMS Compilation1121282
+Ref: VMS Compilation-Footnote-11122504
+Node: VMS Dynamic Extensions1122562
+Node: VMS Installation Details1124246
+Node: VMS Running1126498
+Node: VMS GNV1129334
+Node: VMS Old Gawk1130068
+Node: Bugs1130538
+Node: Other Versions1134421
+Node: Installation summary1140845
+Node: Notes1141901
+Node: Compatibility Mode1142766
+Node: Additions1143548
+Node: Accessing The Source1144473
+Node: Adding Code1145908
+Node: New Ports1152065
+Node: Derived Files1156547
+Ref: Derived Files-Footnote-11162022
+Ref: Derived Files-Footnote-21162056
+Ref: Derived Files-Footnote-31162652
+Node: Future Extensions1162766
+Node: Implementation Limitations1163372
+Node: Extension Design1164620
+Node: Old Extension Problems1165774
+Ref: Old Extension Problems-Footnote-11167291
+Node: Extension New Mechanism Goals1167348
+Ref: Extension New Mechanism Goals-Footnote-11170708
+Node: Extension Other Design Decisions1170897
+Node: Extension Future Growth1173005
+Node: Old Extension Mechanism1173841
+Node: Notes summary1175603
+Node: Basic Concepts1176789
+Node: Basic High Level1177470
+Ref: figure-general-flow1177742
+Ref: figure-process-flow1178341
+Ref: Basic High Level-Footnote-11181570
+Node: Basic Data Typing1181755
+Node: Glossary1185083
+Node: Copying1217012
+Node: GNU Free Documentation License1254568
+Node: Index1279704
 
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 3f2afed..e7d979d 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -1300,7 +1300,7 @@ October 2014
       <affiliation><jobtitle>Nof Ayalon</jobtitle></affiliation>
       <affiliation><jobtitle>Israel</jobtitle></affiliation>
     </author>
-    <date>December 2014</date>
+    <date>February 2015</date>
    </prefaceinfo>
 @end docbook
 
@@ -2284,14 +2284,14 @@ which they raised and educated me.
 Finally, I also must acknowledge my gratitude to G-d, for the many 
opportunities
 He has sent my way, as well as for the gifts He has given me with which to
 take advantage of those opportunities.
address@hidden
address@hidden
 @sp 2
 @noindent
 Arnold Robbins @*
 Nof Ayalon @*
 Israel @*
-December 2014
address@hidden iftex
+February 2015
address@hidden ifnotdocbook
 
 @ifnotinfo
 @part @value{PART1}The @command{awk} Language
@@ -31589,7 +31589,7 @@ indicates what is in the @code{union}.
 Representing numbers is easy---the API uses a C @code{double}.  Strings
 require more work. Because @command{gawk} allows embedded @sc{nul} bytes
 in string values, a string must be represented as a pair containing a
-data-pointer and length. This is the @code{awk_string_t} type.
+data pointer and length. This is the @code{awk_string_t} type.
 
 Identifiers (i.e., the names of global variables) can be associated
 with either scalar values or with arrays.  In addition, @command{gawk}
@@ -31602,12 +31602,12 @@ of the @code{union} as if they were fields in a 
@code{struct}; this
 is a common coding practice in C.  Such code is easier to write and to
 read, but it remains @emph{your} responsibility to make sure that
 the @code{val_type} member correctly reflects the type of the value in
-the @code{awk_value_t}.
+the @code{awk_value_t} struct.
 
 Conceptually, the first three members of the @code{union} (number, string,
 and array) are all that is needed for working with @command{awk} values.
 However, because the API provides routines for accessing and changing
-the value of global scalar variables only by using the variable's name,
+the value of a global scalar variable only by using the variable's name,
 there is a performance penalty: @command{gawk} must find the variable
 each time it is accessed and changed.  This turns out to be a real issue,
 not just a theoretical one.
@@ -31625,7 +31625,9 @@ See also the entry for ``Cookie'' in the @ref{Glossary}.
 object for that variable, and then use
 the cookie for getting the variable's value or for changing the variable's
 value.
-This is the @code{awk_scalar_t} type and @code{scalar_cookie} macro.
+The @code{awk_scalar_t} type holds a scalar cookie, and the
address@hidden macro provides access to the value of that type
+in the @code{awk_value_t} struct.
 Given a scalar cookie, @command{gawk} can directly retrieve or
 modify the value, as required, without having to find it first.
 
@@ -31634,8 +31636,8 @@ If you know that you wish to
 use the same numeric or string @emph{value} for one or more variables,
 you can create the value once, retaining a @dfn{value cookie} for it,
 and then pass in that value cookie whenever you wish to set the value of a
-variable.  This saves both storage space within the running @command{gawk}
-process as well as the time needed to create the value.
+variable.  This both storage space within the running @command{gawk}
+process and reduces the time needed to create the value.
 
 @node Memory Allocation Functions
 @subsection Memory Allocation Functions and Convenience Macros
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 3e97423..c41d5a6 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -1295,7 +1295,7 @@ October 2014
       <affiliation><jobtitle>Nof Ayalon</jobtitle></affiliation>
       <affiliation><jobtitle>Israel</jobtitle></affiliation>
     </author>
-    <date>December 2014</date>
+    <date>February 2015</date>
    </prefaceinfo>
 @end docbook
 
@@ -2251,14 +2251,14 @@ which they raised and educated me.
 Finally, I also must acknowledge my gratitude to G-d, for the many 
opportunities
 He has sent my way, as well as for the gifts He has given me with which to
 take advantage of those opportunities.
address@hidden
address@hidden
 @sp 2
 @noindent
 Arnold Robbins @*
 Nof Ayalon @*
 Israel @*
-December 2014
address@hidden iftex
+February 2015
address@hidden ifnotdocbook
 
 @ifnotinfo
 @part @value{PART1}The @command{awk} Language
@@ -30680,7 +30680,7 @@ indicates what is in the @code{union}.
 Representing numbers is easy---the API uses a C @code{double}.  Strings
 require more work. Because @command{gawk} allows embedded @sc{nul} bytes
 in string values, a string must be represented as a pair containing a
-data-pointer and length. This is the @code{awk_string_t} type.
+data pointer and length. This is the @code{awk_string_t} type.
 
 Identifiers (i.e., the names of global variables) can be associated
 with either scalar values or with arrays.  In addition, @command{gawk}
@@ -30693,12 +30693,12 @@ of the @code{union} as if they were fields in a 
@code{struct}; this
 is a common coding practice in C.  Such code is easier to write and to
 read, but it remains @emph{your} responsibility to make sure that
 the @code{val_type} member correctly reflects the type of the value in
-the @code{awk_value_t}.
+the @code{awk_value_t} struct.
 
 Conceptually, the first three members of the @code{union} (number, string,
 and array) are all that is needed for working with @command{awk} values.
 However, because the API provides routines for accessing and changing
-the value of global scalar variables only by using the variable's name,
+the value of a global scalar variable only by using the variable's name,
 there is a performance penalty: @command{gawk} must find the variable
 each time it is accessed and changed.  This turns out to be a real issue,
 not just a theoretical one.
@@ -30716,7 +30716,9 @@ See also the entry for ``Cookie'' in the @ref{Glossary}.
 object for that variable, and then use
 the cookie for getting the variable's value or for changing the variable's
 value.
-This is the @code{awk_scalar_t} type and @code{scalar_cookie} macro.
+The @code{awk_scalar_t} type holds a scalar cookie, and the
address@hidden macro provides access to the value of that type
+in the @code{awk_value_t} struct.
 Given a scalar cookie, @command{gawk} can directly retrieve or
 modify the value, as required, without having to find it first.
 
@@ -30725,8 +30727,8 @@ If you know that you wish to
 use the same numeric or string @emph{value} for one or more variables,
 you can create the value once, retaining a @dfn{value cookie} for it,
 and then pass in that value cookie whenever you wish to set the value of a
-variable.  This saves both storage space within the running @command{gawk}
-process as well as the time needed to create the value.
+variable.  This both storage space within the running @command{gawk}
+process and reduces the time needed to create the value.
 
 @node Memory Allocation Functions
 @subsection Memory Allocation Functions and Convenience Macros

-----------------------------------------------------------------------

Summary of changes:
 doc/ChangeLog   |    4 +
 doc/gawk.info   | 1102 ++++++++++++++++++++++++++++---------------------------
 doc/gawk.texi   |   22 +-
 doc/gawktexi.in |   22 +-
 4 files changed, 583 insertions(+), 567 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]