Extension Design (The GNU Awk User’s Guide)
C.5 Extension API Design
This section documents the design of the extension API, including a discussion of some of the history and problems that needed to be solved.
The first version of extensions for
gawk was developed in the mid-1990s and released with
gawk 3.1 in the late 1990s. The basic mechanisms and design remained unchanged for close to 15 years, until 2012.
The old extension mechanism used data types and functions from
gawk itself, with a “clever hack” to install extension functions.
gawk included some sample extensions, of which a few were really useful. However, it was clear from the outset that the extension mechanism was bolted onto the side and was not really well thought out.
|• Old Extension Problems||Problems with the old mechanism.|
|• Extension New Mechanism Goals||Goals for the new mechanism.|
|• Extension Other Design Decisions||Some other design decisions.|
|• Extension Future Growth||Some room for future growth.|