Gawk Roadmap

This page is an unofficial, subject to change, work in progress, roadmap for gawk development. Having this page is an experiment, I hope it will be a productive one.

Stage 1 - Byte Code Execution Engine and Debugger - Make a Test Release

In 2003, a gentleman by the name of Jon Haque implemented a byte-code execution engine and debugger (woo hoo!) for gawk. It also included built-in file inclusion.This was done for a development version in between gawk 3.1.3 and 3.1.4. It languished, unintegrated into the mainline code, because it was a big change and I didn't have the time to review it.

Around September 2009 or so, Stephen Davies, one of my portability testers, volunteered to help bring the code into the present. This meant getting it integrated into 3.1.7 (the current official release) and getting it to work (passing make check on all currently supported systems).

As of mid-December 2009, it works on all supported systems except z/OS on the IBM S/390; we are actively working on this system. I expect to make a wide test release in January, 2010.

Remaining tasks:

If anyone wants to help with the documentation tasks, please let me know!!!

Stage 2 - Make Another Stable Release

The gawk CVS code has moved on past 3.1.7 and there are a number of bug fixes there. I want to make a stable 3.1.8 release that can be used for GNU/Linux and other OS distributions. This should be able to happen fairly quickly.

The changes from 3.1.7 to 3.1.8 will be set aside as one change set.

Stage 3 - Update Byte Code Version to 3.1.8

The byte code changes need to be moved into 3.1.8. The changes from 3.1.8 to 3.1.8 + byte code will be set aside as a second change set.

Stage 4 - Merge Into the Development CVS

The two change sets from 3.1.8 and the byte-code diffs will then be merged into the development version of gawk in the gawk-devel CVS branch on savannah.gnu.org.

At that point, further feature development can proceed in the development branch.

Stage 5 - Make a Release

I want to provide short options for all the long ones so that they may be used from #! scripts, and then make a new release. This will likely be 4.0. A big task here is making sure there's enough documentation and that it's up-to-date and correct.

Stage 6 - Other Stuff

There are no concrete plans after the above steps.

However, here are some ideas that have been floating around in my head for a while:

Bookkeeping

Copyright © 2009, Arnold David Robbins. All Rights Reserved.

First started: 19 December, 2009.

Last updated: 21 December, 2009.