(gawk.info) Improvements
Info Catalog
(gawk.info) Future Extensions
(gawk.info) Notes
Suggestions for Improvements
============================
Here are some projects that would-be `gawk' hackers might like to
take on. They vary in size from a few days to a few weeks of
programming, depending on which one you choose and how fast a
programmer you are. Please send any improvements you write to the
maintainers at the GNU project. Adding New Features Adding Code,
for guidelines to follow when adding new features to `gawk'.
Reporting Problems and Bugs Bugs, for information on contacting the
maintainers.
1. Compilation of `awk' programs: `gawk' uses a Bison (YACC-like)
parser to convert the script given it into a syntax tree; the
syntax tree is then executed by a simple recursive evaluator.
This method incurs a lot of overhead, since the recursive
evaluator performs many procedure calls to do even the simplest
things.
It should be possible for `gawk' to convert the script's parse tree
into a C program which the user would then compile, using the
normal C compiler and a special `gawk' library to provide all the
needed functions (regexps, fields, associative arrays, type
coercion, and so on).
An easier possibility might be for an intermediate phase of `awk'
to convert the parse tree into a linear byte code form like the
one used in GNU Emacs Lisp. The recursive evaluator would then be
replaced by a straight line byte code interpreter that would be
intermediate in speed between running a compiled program and doing
what `gawk' does now.
2. The programs in the test suite could use documenting in this
Info file.
3. See the `FUTURES' file for more ideas. Contact us if you would
seriously like to tackle any of the items listed there.
Info Catalog
(gawk.info) Future Extensions
(gawk.info) Notes
automatically generated byinfo2html