21.07.2015 Views

GAWK: Effective AWK Programming

GAWK: Effective AWK Programming

GAWK: Effective AWK Programming

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

viii<strong>G<strong>AWK</strong></strong>: <strong>Effective</strong> <strong>AWK</strong> <strong>Programming</strong>B.3.1.6 Using gawk In The MSYS Environment . . . . . . . . . . . . 275B.3.2 How to Compile and Install gawk on VMS . . . . . . . . . . . . . . 275B.3.2.1 Compiling gawk on VMS . . . . . . . . . . . . . . . . . . . . . . . . . . . 275B.3.2.2 Installing gawk on VMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276B.3.2.3 Running gawk on VMS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276B.3.2.4 Building and Using gawk on VMS POSIX . . . . . . . . . . 277B.3.2.5 Some VMS Systems Have An Old Version of gawk . . 277B.4 Unsupported Operating System Ports. . . . . . . . . . . . . . . . . . . . . . . . 277B.4.1 Installing gawk on the Atari ST . . . . . . . . . . . . . . . . . . . . . . . . . 277B.4.1.1 Compiling gawk on the Atari ST . . . . . . . . . . . . . . . . . . . 278B.4.1.2 Running gawk on the Atari ST . . . . . . . . . . . . . . . . . . . . . 278B.4.2 Installing gawk on BeOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279B.4.3 Installing gawk on a Tandem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279B.5 Reporting Problems and Bugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280B.6 Other Freely Available awk Implementations . . . . . . . . . . . . . . . . . 281Appendix C Implementation Notes . . . . . . . . . . 284C.1 Downward Compatibility and Debugging. . . . . . . . . . . . . . . . . . . . . 284C.2 Making Additions to gawk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284C.2.1 Adding New Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284C.2.2 Porting gawk to a New Operating System . . . . . . . . . . . . . . . 286C.3 Adding New Built-in Functions to gawk . . . . . . . . . . . . . . . . . . . . . . 287C.3.1 A Minimal Introduction to gawk Internals . . . . . . . . . . . . . . . 287C.3.2 Directory and File Operation Built-ins . . . . . . . . . . . . . . . . . . 292C.3.2.1 Using chdir and stat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292C.3.2.2 C Code for chdir and stat . . . . . . . . . . . . . . . . . . . . . . . . 293C.3.2.3 Integrating the Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 296C.4 Probable Future Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297Appendix D Basic <strong>Programming</strong> Concepts . . 300D.1 What a Program Does. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300D.2 Data Values in a Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301D.3 Floating-Point Number Caveats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302D.3.1 The String Value Can Lie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302D.3.2 Floating Point Numbers Are Not Abstract Numbers . . . . 303D.3.3 Standards Versus Existing Practice . . . . . . . . . . . . . . . . . . . . . 304Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306GNU General Public License . . . . . . . . . . . . . . . . . . . 316GNU Free Documentation License . . . . . . . . . . . . . 327ADDENDUM: How to use this License for your documents . . . . . . . . 333Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!