bug-gnu-utils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Experimental gawk version, *with debugger*, now available


From: Aharon Robbins
Subject: Experimental gawk version, *with debugger*, now available
Date: Thu, 04 Feb 2010 08:43:37 +0200

        awk 'BEGIN { print "hello, word" }'

I am pleased to announce the availability of a test version of gawk.
This version uses a byte-code execution engine, and most importantly,
it includes a debugger that works at the level of awk statements! The
distribution is available at

        http://www.skeeve.com/gawk/gawk-3.1.7-bc-d.tar.gz

This version is the same as 3.1.7, but with a new execution engine and
a debugging version of gawk named, rather imaginatively, "dgawk".

There is a story here.  Circa 2003, a gentleman by the name of Jon Haque
developed the byte-code execution engine and debugger, in the context
of a development gawk version, somewhere between 3.1.3 and 3.1.4.

I never integrated the changes as they were massive and I was busy,
and I wasn't able to review them.

The changes languished, and Jon disappeared.

Last fall, Stephen Davies, one of my portability team members, agreed to
take on the task of bringing the code into the present.  With modest help
from me, he succeeded.  We then went through additional work to get this
version portable to some of the more esoteric systems that gawk supports
(64 bit Linux, z/OS and VMS).

I thought it was ready for release at the end of December, until another
one of my testers found a severe memory leak in the byte code version.
It was a bear to track down, and once again Stephen came through.

The debugger uses the readline library, and it is purposely similar
to GDB.  There is only minimal documentation on the debugger; I'd love
to have someone volunteer to write a chapter for the gawk manual that
explains it fully.

In addition, this version supports a file-inclusion mechanism, but it
is quite likely to change once I review the awk.info poll results and
make a final decision (within a week, I hope!).

Per the gawk roadmap I announced a while back, the plan is as follows:

1. Make a 3.1.8 release based on the original execution engine so that
   OS distributions have a stable version to ship.

2. Merge the 3.1.8 changes into the 'gawk-devel' tree.

3. Merge the byte-code changes into 3.1.8 to give us an up-to-date
   set of byte-code changes.

4. Merge the byte-code changes into the devel tree. Development will
   then continue in the devel tree towards a 4.0 release.

PLEASE try this out on your programs.  Please also play with the
debugger.

If you think this is a major step forward, send Stephen a note thanking
him - his email address is in the dist. (I don't want to put it into
the news article so he won't get spam.)

If you are interested in contributing, please contact me directly, not
by posting in the news group.

Thanks!

Arnold
-- 
Aharon (Arnold) Robbins                                 arnold AT skeeve DOT com
P.O. Box 354            Home Phone: +972  8 979-0381
Nof Ayalon              Cell Phone: +972 50  729-7545
D.N. Shimshon 99785     ISRAEL




reply via email to

[Prev in Thread] Current Thread [Next in Thread]