Appendix C. Implementation Notes

This appendix contains information mainly of interest to implementors and maintainers of gawk. Everything in it applies specifically to gawk and not to other implementations.

Downward Compatibility and Debugging

See the Section A.5 in Appendix A for a summary of the GNU extensions to the awk language and program. All of these features can be turned off by invoking gawk with the --traditional option or with the --posix option.

If gawk is compiled for debugging with -DDEBUG, then there is one more option available on the command line:

-W parsedebug --parsedebug

Prints out the parse stack information as the program is being parsed.

This option is intended only for serious gawk developers and not for the casual user. It probably has not even been compiled into your version of gawk, since it slows down execution.

Making Additions to gawk

If you find that you want to enhance gawk in a significant fashion, you are perfectly free to do so. That is the point of having free software; the source code is available and you are free to change it as you want (see Appendix E).

This section discusses the ways you might want to change gawk as well as any considerations you should bear in mind.

Adding New Features

You are free to add any new features you like to gawk. However, if you want your changes to be incorporated into the gawk distribution, there are several steps that you need to take in order to make it possible for me to include your changes: ...

Get Effective awk Programming, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.