\unnchapentry{Foreword}{10001}{Foreword}{1}
\unnchapentry{Preface}{10002}{Preface}{3}
\unnsecentry{History of \command {awk} and \command {gawk}}{10002.1}{History}{3}
\unnsecentry{A Rose by Any Other Name}{10002.2}{Names}{4}
\unnsecentry{Using This Book}{10002.3}{This Manual}{5}
\unnsecentry{Typographical Conventions}{10002.4}{Conventions}{6}
\unnsecentry{The GNU Project and This Book}{10002.5}{Manual History}{7}
\unnsecentry{How to Contribute}{10002.6}{How To Contribute}{8}
\unnsecentry{Acknowledgments}{10002.7}{Acknowledgments}{8}
\numchapentry{Getting Started with \command {awk}}{1}{Getting Started}{11}
\numsecentry{How to Run \command {awk} Programs}{1.1}{Running gawk}{11}
\numsubsecentry{One-Shot Throwaway \command {awk} Programs}{1.1.1}{One-shot}{11}
\numsubsecentry{Running \command {awk} Without Input Files}{1.1.2}{Read Terminal}{12}
\numsubsecentry{Running Long Programs}{1.1.3}{Long}{12}
\numsubsecentry{Executable \command {awk} Programs}{1.1.4}{Executable Scripts}{13}
\numsubsecentry{Comments in \command {awk} Programs}{1.1.5}{Comments}{14}
\numsubsecentry{Shell-Quoting Issues}{1.1.6}{Quoting}{14}
\numsecentry{Data Files for the Examples}{1.2}{Sample Data Files}{16}
\numsecentry{Some Simple Examples}{1.3}{Very Simple}{17}
\numsecentry{An Example with Two Rules}{1.4}{Two Rules}{19}
\numsecentry{A More Complex Example}{1.5}{More Complex}{20}
\numsecentry{\command {awk} Statements Versus Lines}{1.6}{Statements/Lines}{20}
\numsecentry{Other Features of \command {awk}}{1.7}{Other Features}{22}
\numsecentry{When to Use \command {awk}}{1.8}{When}{22}
\numchapentry{Regular Expressions}{2}{Regexp}{24}
\numsecentry{How to Use Regular Expressions}{2.1}{Regexp Usage}{24}
\numsecentry{Escape Sequences}{2.2}{Escape Sequences}{25}
\numsecentry{Regular Expression Operators}{2.3}{Regexp Operators}{27}
\numsecentry{Using Character Lists}{2.4}{Character Lists}{29}
\numsecentry{\command {gawk}-Specific Regexp Operators}{2.5}{GNU Regexp Operators}{31}
\numsecentry{Case Sensitivity in Matching}{2.6}{Case-sensitivity}{32}
\numsecentry{How Much Text Matches?}{2.7}{Leftmost Longest}{33}
\numsecentry{Using Dynamic Regexps}{2.8}{Computed Regexps}{34}
\numsecentry{Where You Are Makes A Difference}{2.9}{Locales}{35}
\numchapentry{Reading Input Files}{3}{Reading Files}{36}
\numsecentry{How Input Is Split into Records}{3.1}{Records}{36}
\numsecentry{Examining Fields}{3.2}{Fields}{39}
\numsecentry{Nonconstant Field Numbers}{3.3}{Nonconstant Fields}{40}
\numsecentry{Changing the Contents of a Field}{3.4}{Changing Fields}{41}
\numsecentry{Specifying How Fields Are Separated}{3.5}{Field Separators}{43}
\numsubsecentry{Using Regular Expressions to Separate Fields}{3.5.1}{Regexp Field Splitting}{44}
\numsubsecentry{Making Each Character a Separate Field}{3.5.2}{Single Character Fields}{44}
\numsubsecentry{Setting \code {FS} from the Command Line}{3.5.3}{Command Line Field Separator}{45}
\numsubsecentry{Field-Splitting Summary}{3.5.4}{Field Splitting Summary}{46}
\numsecentry{Reading Fixed-Width Data}{3.6}{Constant Size}{47}
\numsecentry{Multiple-Line Records}{3.7}{Multiple Line}{49}
\numsecentry{Explicit Input with \code {getline}}{3.8}{Getline}{51}
\numsubsecentry{Using \code {getline} with No Arguments}{3.8.1}{Plain Getline}{51}
\numsubsecentry{Using \code {getline} into a Variable}{3.8.2}{Getline/Variable}{52}
\numsubsecentry{Using \code {getline} from a File}{3.8.3}{Getline/File}{53}
\numsubsecentry{Using \code {getline} into a Variable from a File}{3.8.4}{Getline/Variable/File}{53}
\numsubsecentry{Using \code {getline} from a Pipe}{3.8.5}{Getline/Pipe}{54}
\numsubsecentry{Using \code {getline} into a Variable from a Pipe}{3.8.6}{Getline/Variable/Pipe}{55}
\numsubsecentry{Using \code {getline} from a Coprocess}{3.8.7}{Getline/Coprocess}{55}
\numsubsecentry{Using \code {getline} into a Variable from a Coprocess}{3.8.8}{Getline/Variable/Coprocess}{55}
\numsubsecentry{Points to Remember About \code {getline}}{3.8.9}{Getline Notes}{56}
\numsubsecentry{Summary of \code {getline} Variants}{3.8.10}{Getline Summary}{56}
\numchapentry{Printing Output}{4}{Printing}{57}
\numsecentry{The \code {print} Statement}{4.1}{Print}{57}
\numsecentry{Examples of \code {print} Statements}{4.2}{Print Examples}{57}
\numsecentry{Output Separators}{4.3}{Output Separators}{59}
\numsecentry{Controlling Numeric Output with \code {print}}{4.4}{OFMT}{59}
\numsecentry{Using \code {printf} Statements for Fancier Printing}{4.5}{Printf}{60}
\numsubsecentry{Introduction to the \code {printf} Statement}{4.5.1}{Basic Printf}{60}
\numsubsecentry{Format-Control Letters}{4.5.2}{Control Letters}{60}
\numsubsecentry{Modifiers for \code {printf} Formats}{4.5.3}{Format Modifiers}{61}
\numsubsecentry{Examples Using \code {printf}}{4.5.4}{Printf Examples}{64}
\numsecentry{Redirecting Output of \code {print} and \code {printf}}{4.6}{Redirection}{65}
\numsecentry{Special File Names in \command {gawk}}{4.7}{Special Files}{67}
\numsubsecentry{Special Files for Standard Descriptors}{4.7.1}{Special FD}{68}
\numsubsecentry{Special Files for Process-Related Information}{4.7.2}{Special Process}{69}
\numsubsecentry{Special Files for Network Communications}{4.7.3}{Special Network}{69}
\numsubsecentry{Special File Name Caveats}{4.7.4}{Special Caveats}{70}
\numsecentry{Closing Input and Output Redirections}{4.8}{Close Files And Pipes}{70}
\numchapentry{Expressions}{5}{Expressions}{73}
\numsecentry{Constant Expressions}{5.1}{Constants}{73}
\numsubsecentry{Numeric and String Constants}{5.1.1}{Scalar Constants}{73}
\numsubsecentry{Octal and Hexadecimal Numbers}{5.1.2}{Nondecimal-numbers}{73}
\numsubsecentry{Regular Expression Constants}{5.1.3}{Regexp Constants}{74}
\numsecentry{Using Regular Expression Constants}{5.2}{Using Constant Regexps}{74}
\numsecentry{Variables}{5.3}{Variables}{76}
\numsubsecentry{Using Variables in a Program}{5.3.1}{Using Variables}{76}
\numsubsecentry{Assigning Variables on the Command Line}{5.3.2}{Assignment Options}{76}
\numsecentry{Conversion of Strings and Numbers}{5.4}{Conversion}{77}
\numsecentry{Arithmetic Operators}{5.5}{Arithmetic Ops}{78}
\numsecentry{String Concatenation}{5.6}{Concatenation}{80}
\numsecentry{Assignment Expressions}{5.7}{Assignment Ops}{81}
\numsecentry{Increment and Decrement Operators}{5.8}{Increment Ops}{83}
\numsecentry{True and False in \command {awk}}{5.9}{Truth Values}{85}
\numsecentry{Variable Typing and Comparison Expressions}{5.10}{Typing and Comparison}{85}
\numsecentry{Boolean Expressions}{5.11}{Boolean Ops}{88}
\numsecentry{Conditional Expressions}{5.12}{Conditional Exp}{89}
\numsecentry{Function Calls}{5.13}{Function Calls}{89}
\numsecentry{Operator Precedence (How Operators Nest)}{5.14}{Precedence}{90}
\numchapentry{Patterns, Actions, and Variables}{6}{Patterns and Actions}{93}
\numsecentry{Pattern Elements}{6.1}{Pattern Overview}{93}
\numsubsecentry{Regular Expressions as Patterns}{6.1.1}{Regexp Patterns}{93}
\numsubsecentry{Expressions as Patterns}{6.1.2}{Expression Patterns}{93}
\numsubsecentry{Specifying Record Ranges with Patterns}{6.1.3}{Ranges}{95}
\numsubsecentry{The \code {BEGIN} and \code {END} Special Patterns}{6.1.4}{BEGIN/END}{96}
\numsubsubsecentry{Startup and Cleanup Actions}{6.1.4.1}{Using BEGIN/END}{96}
\numsubsubsecentry{Input/Output from \code {BEGIN} and \code {END} Rules}{6.1.4.2}{I/O And BEGIN/END}{97}
\numsubsecentry{The Empty Pattern}{6.1.5}{Empty}{97}
\numsecentry{Using Shell Variables in Programs}{6.2}{Using Shell Variables}{97}
\numsecentry{Actions}{6.3}{Action Overview}{98}
\numsecentry{Control Statements in Actions}{6.4}{Statements}{99}
\numsubsecentry{The \code {if}-\code {else} Statement}{6.4.1}{If Statement}{99}
\numsubsecentry{The \code {while} Statement}{6.4.2}{While Statement}{100}
\numsubsecentry{The \code {do}-\code {while} Statement}{6.4.3}{Do Statement}{101}
\numsubsecentry{The \code {for} Statement}{6.4.4}{For Statement}{101}
\numsubsecentry{The \code {switch} Statement}{6.4.5}{Switch Statement}{102}
\numsubsecentry{The \code {break} Statement}{6.4.6}{Break Statement}{103}
\numsubsecentry{The \code {continue} Statement}{6.4.7}{Continue Statement}{104}
\numsubsecentry{The \code {next} Statement}{6.4.8}{Next Statement}{105}
\numsubsecentry{Using \command {gawk}'s \code {nextfile} Statement}{6.4.9}{Nextfile Statement}{106}
\numsubsecentry{The \code {exit} Statement}{6.4.10}{Exit Statement}{106}
\numsecentry{Built-in Variables}{6.5}{Built-in Variables}{107}
\numsubsecentry{Built-in Variables That Control \command {awk}}{6.5.1}{User-modified}{107}
\numsubsecentry{Built-in Variables That Convey Information}{6.5.2}{Auto-set}{110}
\numsubsecentry{Using \code {ARGC} and \code {ARGV}}{6.5.3}{ARGC and ARGV}{113}
\numchapentry{Arrays in \command {awk}}{7}{Arrays}{116}
\numsecentry{Introduction to Arrays}{7.1}{Array Intro}{116}
\numsecentry{Referring to an Array Element}{7.2}{Reference to Elements}{117}
\numsecentry{Assigning Array Elements}{7.3}{Assigning Elements}{118}
\numsecentry{Basic Array Example}{7.4}{Array Example}{118}
\numsecentry{Scanning All Elements of an Array}{7.5}{Scanning an Array}{119}
\numsecentry{The \code {delete} Statement}{7.6}{Delete}{120}
\numsecentry{Using Numbers to Subscript Arrays}{7.7}{Numeric Array Subscripts}{121}
\numsecentry{Using Uninitialized Variables as Subscripts}{7.8}{Uninitialized Subscripts}{122}
\numsecentry{Multidimensional Arrays}{7.9}{Multi-dimensional}{122}
\numsecentry{Scanning Multidimensional Arrays}{7.10}{Multi-scanning}{124}
\numsecentry{Sorting Array Values and Indices with \command {gawk}}{7.11}{Array Sorting}{124}
\numchapentry{Functions}{8}{Functions}{127}
\numsecentry{Built-in Functions}{8.1}{Built-in}{127}
\numsubsecentry{Calling Built-in Functions}{8.1.1}{Calling Built-in}{127}
\numsubsecentry{Numeric Functions}{8.1.2}{Numeric Functions}{127}
\numsubsecentry{String-Manipulation Functions}{8.1.3}{String Functions}{129}
\numsubsubsecentry{More About \samp {{\tt \backslashcurfont }} and \samp {&} with \code {sub}, \code {gsub}, and \code {gensub}}{8.1.3.1}{Gory Details}{136}
\numsubsecentry{Input/Output Functions}{8.1.4}{I/O Functions}{140}
\numsubsecentry{Using \command {gawk}'s Timestamp Functions}{8.1.5}{Time Functions}{142}
\numsubsecentry{Bit-Manipulation Functions of \command {gawk}}{8.1.6}{Bitwise Functions}{147}
\numsubsecentry{Using \command {gawk}'s String-Translation Functions}{8.1.7}{I18N Functions}{149}
\numsecentry{User-Defined Functions}{8.2}{User-defined}{149}
\numsubsecentry{Function Definition Syntax}{8.2.1}{Definition Syntax}{149}
\numsubsecentry{Function Definition Examples}{8.2.2}{Function Example}{151}
\numsubsecentry{Calling User-Defined Functions}{8.2.3}{Function Caveats}{152}
\numsubsecentry{The \code {return} Statement}{8.2.4}{Return Statement}{154}
\numsubsecentry{Functions and Their Effects on Variable Typing}{8.2.5}{Dynamic Typing}{155}
\numchapentry{Internationalization with \command {gawk}}{9}{Internationalization}{156}
\numsecentry{Internationalization and Localization}{9.1}{I18N and L10N}{156}
\numsecentry{GNU \code {gettext}}{9.2}{Explaining gettext}{156}
\numsecentry{Internationalizing \command {awk} Programs}{9.3}{Programmer i18n}{158}
\numsecentry{Translating \command {awk} Programs}{9.4}{Translator i18n}{159}
\numsubsecentry{Extracting Marked Strings}{9.4.1}{String Extraction}{160}
\numsubsecentry{Rearranging \code {printf} Arguments}{9.4.2}{Printf Ordering}{160}
\numsubsecentry{\command {awk} Portability Issues}{9.4.3}{I18N Portability}{161}
\numsecentry{A Simple Internationalization Example}{9.5}{I18N Example}{162}
\numsecentry{\command {gawk} Can Speak Your Language}{9.6}{Gawk I18N}{163}
\numchapentry{Advanced Features of \command {gawk}}{10}{Advanced Features}{165}
\numsecentry{Allowing Nondecimal Input Data}{10.1}{Nondecimal Data}{165}
\numsecentry{Two-Way Communications with Another Process}{10.2}{Two-way I/O}{166}
\numsecentry{Using \command {gawk} for Network Programming}{10.3}{TCP/IP Networking}{168}
\numsecentry{Using \command {gawk} with BSD Portals}{10.4}{Portal Files}{169}
\numsecentry{Profiling Your \command {awk} Programs}{10.5}{Profiling}{169}
\numchapentry{Running \command {awk} and \command {gawk}}{11}{Invoking Gawk}{173}
\numsecentry{Invoking \command {awk}}{11.1}{Command Line}{173}
\numsecentry{Command-Line Options}{11.2}{Options}{173}
\numsecentry{Other Command-Line Arguments}{11.3}{Other Arguments}{178}
\numsecentry{The \env {AWKPATH} Environment Variable}{11.4}{AWKPATH Variable}{178}
\numsecentry{Obsolete Options and/or Features}{11.5}{Obsolete}{179}
\numsecentry{Undocumented Options and Features}{11.6}{Undocumented}{180}
\numsecentry{Known Bugs in \command {gawk}}{11.7}{Known Bugs}{180}
\numchapentry{A Library of \command {awk} Functions}{12}{Library Functions}{181}
\numsecentry{Naming Library Function Global Variables}{12.1}{Library Names}{181}
\numsecentry{General Programming}{12.2}{General Functions}{183}
\numsubsecentry{Implementing \code {nextfile} as a Function}{12.2.1}{Nextfile Function}{183}
\numsubsecentry{Converting Strings To Numbers}{12.2.2}{Strtonum Function}{184}
\numsubsecentry{Assertions}{12.2.3}{Assert Function}{185}
\numsubsecentry{Rounding Numbers}{12.2.4}{Round Function}{187}
\numsubsecentry{The Cliff Random Number Generator}{12.2.5}{Cliff Random Function}{188}
\numsubsecentry{Translating Between Characters and Numbers}{12.2.6}{Ordinal Functions}{188}
\numsubsecentry{Merging an Array into a String}{12.2.7}{Join Function}{190}
\numsubsecentry{Managing the Time of Day}{12.2.8}{Gettimeofday Function}{190}
\numsecentry{Data File Management}{12.3}{Data File Management}{192}
\numsubsecentry{Noting Data File Boundaries}{12.3.1}{Filetrans Function}{192}
\numsubsecentry{Rereading the Current File}{12.3.2}{Rewind Function}{193}
\numsubsecentry{Checking for Readable Data Files}{12.3.3}{File Checking}{194}
\numsubsecentry{Checking For Zero-length Files}{12.3.4}{Empty Files}{195}
\numsubsecentry{Treating Assignments as File Names}{12.3.5}{Ignoring Assigns}{196}
\numsecentry{Processing Command-Line Options}{12.4}{Getopt Function}{196}
\numsecentry{Reading the User Database}{12.5}{Passwd Functions}{201}
\numsecentry{Reading the Group Database}{12.6}{Group Functions}{205}
\numchapentry{Practical \command {awk} Programs}{13}{Sample Programs}{210}
\numsecentry{Running the Example Programs}{13.1}{Running Examples}{210}
\numsecentry{Reinventing Wheels for Fun and Profit}{13.2}{Clones}{210}
\numsubsecentry{Cutting out Fields and Columns}{13.2.1}{Cut Program}{210}
\numsubsecentry{Searching for Regular Expressions in Files}{13.2.2}{Egrep Program}{215}
\numsubsecentry{Printing out User Information}{13.2.3}{Id Program}{219}
\numsubsecentry{Splitting a Large File into Pieces}{13.2.4}{Split Program}{221}
\numsubsecentry{Duplicating Output into Multiple Files}{13.2.5}{Tee Program}{223}
\numsubsecentry{Printing Nonduplicated Lines of Text}{13.2.6}{Uniq Program}{224}
\numsubsecentry{Counting Things}{13.2.7}{Wc Program}{228}
\numsecentry{A Grab Bag of \command {awk} Programs}{13.3}{Miscellaneous Programs}{230}
\numsubsecentry{Finding Duplicated Words in a Document}{13.3.1}{Dupword Program}{230}
\numsubsecentry{An Alarm Clock Program}{13.3.2}{Alarm Program}{231}
\numsubsecentry{Transliterating Characters}{13.3.3}{Translate Program}{233}
\numsubsecentry{Printing Mailing Labels}{13.3.4}{Labels Program}{235}
\numsubsecentry{Generating Word-Usage Counts}{13.3.5}{Word Sorting}{237}
\numsubsecentry{Removing Duplicates from Unsorted Text}{13.3.6}{History Sorting}{239}
\numsubsecentry{Extracting Programs from Texinfo Source Files}{13.3.7}{Extract Program}{240}
\numsubsecentry{A Simple Stream Editor}{13.3.8}{Simple Sed}{243}
\numsubsecentry{An Easy Way to Use Library Functions}{13.3.9}{Igawk Program}{244}
\appentry{The Evolution of the \command {awk} Language}{A}{Language History}{252}
\appsecentry{Major Changes Between V7 and SVR3.1}{A.1}{V7/SVR3.1}{252}
\appsecentry{Changes Between SVR3.1 and SVR4}{A.2}{SVR4}{253}
\appsecentry{Changes Between SVR4 and POSIX \command {awk}}{A.3}{POSIX}{253}
\appsecentry{Extensions in the Bell Laboratories \command {awk}}{A.4}{BTL}{254}
\appsecentry{Extensions in \command {gawk} Not in POSIX \command {awk}}{A.5}{POSIX/GNU}{255}
\appsecentry{Major Contributors to \command {gawk}}{A.6}{Contributors}{258}
\appentry{Installing \command {gawk}}{B}{Installation}{260}
\appsecentry{The \command {gawk} Distribution}{B.1}{Gawk Distribution}{260}
\appsubsecentry{Getting the \command {gawk} Distribution}{B.1.1}{Getting}{260}
\appsubsecentry{Extracting the Distribution}{B.1.2}{Extracting}{260}
\appsubsecentry{Contents of the \command {gawk} Distribution}{B.1.3}{Distribution contents}{261}
\appsecentry{Compiling and Installing \command {gawk} on Unix}{B.2}{Unix Installation}{264}
\appsubsecentry{Compiling \command {gawk} for Unix}{B.2.1}{Quick Installation}{264}
\appsubsecentry{Additional Configuration Options}{B.2.2}{Additional Configuration Options}{264}
\appsubsecentry{The Configuration Process}{B.2.3}{Configuration Philosophy}{265}
\appsecentry{Installation on Other Operating Systems}{B.3}{Non-Unix Installation}{266}
\appsubsecentry{Installing \command {gawk} on an Amiga}{B.3.1}{Amiga Installation}{266}
\appsubsecentry{Installing \command {gawk} on BeOS}{B.3.2}{BeOS Installation}{266}
\appsubsecentry{Installation on PC Operating Systems}{B.3.3}{PC Installation}{267}
\appsubsubsecentry{Installing a Prepared Distribution for PC Systems}{B.3.3.1}{PC Binary Installation}{267}
\appsubsubsecentry{Compiling \command {gawk} for PC Operating Systems}{B.3.3.2}{PC Compiling}{267}
\appsubsubsecentry{Compiling \command {gawk} For Dynamic Libraries}{B.3.3.3}{PC Dynamic}{269}
\appsubsubsecentry{Using \command {gawk} on PC Operating Systems}{B.3.3.4}{PC Using}{270}
\appsubsubsecentry{Using \command {gawk} In The Cygwin Environment}{B.3.3.5}{Cygwin}{271}
\appsubsecentry{How to Compile and Install \command {gawk} on VMS}{B.3.4}{VMS Installation}{271}
\appsubsubsecentry{Compiling \command {gawk} on VMS}{B.3.4.1}{VMS Compilation}{271}
\appsubsubsecentry{Installing \command {gawk} on VMS}{B.3.4.2}{VMS Installation Details}{272}
\appsubsubsecentry{Running \command {gawk} on VMS}{B.3.4.3}{VMS Running}{273}
\appsubsubsecentry{Building and Using \command {gawk} on VMS POSIX}{B.3.4.4}{VMS POSIX}{273}
\appsecentry{Unsupported Operating System Ports}{B.4}{Unsupported}{273}
\appsubsecentry{Installing \command {gawk} on the Atari ST}{B.4.1}{Atari Installation}{274}
\appsubsubsecentry{Compiling \command {gawk} on the Atari ST}{B.4.1.1}{Atari Compiling}{274}
\appsubsubsecentry{Running \command {gawk} on the Atari ST}{B.4.1.2}{Atari Using}{274}
\appsubsecentry{Installing \command {gawk} on a Tandem}{B.4.2}{Tandem Installation}{275}
\appsecentry{Reporting Problems and Bugs}{B.5}{Bugs}{276}
\appsecentry{Other Freely Available \command {awk} Implementations}{B.6}{Other Versions}{277}
\appentry{Implementation Notes}{C}{Notes}{279}
\appsecentry{Downward Compatibility and Debugging}{C.1}{Compatibility Mode}{279}
\appsecentry{Making Additions to \command {gawk}}{C.2}{Additions}{279}
\appsubsecentry{Adding New Features}{C.2.1}{Adding Code}{279}
\appsubsecentry{Porting \command {gawk} to a New Operating System}{C.2.2}{New Ports}{281}
\appsecentry{Adding New Built-in Functions to \command {gawk}}{C.3}{Dynamic Extensions}{282}
\appsubsecentry{A Minimal Introduction to \command {gawk} Internals}{C.3.1}{Internals}{282}
\appsubsecentry{Directory and File Operation Built-ins}{C.3.2}{Sample Library}{286}
\appsubsubsecentry{Using \code {chdir} and \code {stat}}{C.3.2.1}{Internal File Description}{286}
\appsubsubsecentry{C Code for \code {chdir} and \code {stat}}{C.3.2.2}{Internal File Ops}{287}
\appsubsubsecentry{Integrating the Extensions}{C.3.2.3}{Using Internal File Ops}{290}
\appsecentry{Probable Future Extensions}{C.4}{Future Extensions}{291}
\appentry{Basic Programming Concepts}{D}{Basic Concepts}{294}
\appsecentry{What a Program Does}{D.1}{Basic High Level}{294}
\appsecentry{Data Values in a Computer}{D.2}{Basic Data Typing}{295}
\appsecentry{Floating-Point Number Caveats}{D.3}{Floating Point Issues}{296}
\unnchapentry{Glossary}{10003}{Glossary}{299}
\unnchapentry{GNU General Public License}{10004}{Copying}{309}
\unnsecentry{Preamble}{10004.1}{}{309}
\unnsecentry{Terms and Conditions for Copying, Distribution and Modification}{10004.2}{}{310}
\unnsecentry{How to Apply These Terms to Your New Programs}{10004.3}{}{314}
\unnchapentry{GNU Free Documentation License}{10005}{GNU Free Documentation License}{315}
\unnsecentry{ADDENDUM: How to use this License for your documents}{10005.1}{}{320}
\unnchapentry{Index}{10006}{Index}{322}
