NetBSD/gnu/usr.bin/gawk/FUTURES

116 lines
2.7 KiB
Plaintext

This file lists future projects and enhancements for gawk. Items are listed
in roughly the order they will be done for a given release. This file is
mainly for use by the developer(s) to help keep themselves on track, please
don't bug us too much about schedules or what all this really means.
(An `x' indicates that some progress has been made, but that the feature is
not complete yet.)
For 2.16
========
x Move to autoconf-based configure system.
x Research awk `fflush' function.
x Generalize IGNORECASE
any value makes it work, not just numeric non-zero
make it apply to *all* string comparisons
In 2.17
=======
x Allow RS to be a regexp.
RT variable to hold text of record terminator
RECLEN variable for fixed length records
Feedback alloca.s changes to FSF
x Split() with null string as third arg to split up strings
x Analogously, setting FS="" would split the input record into individual
characters.
x Clean up code by isolating system-specific functions in separate files.
Undertake significant directory reorganization.
x Extensive manual cleanup:
Use of texinfo 2.0 features
Lots more examples
Document all of the above.
x Go to POSIX regexps
Make regex + dfa less dependant on gawk header file includes
Additional manual features:
Document posix regexps
Document use of dbm arrays
? Add an error messages section to the manual
? A section on where gawk is bounded
regex
i/o
sun fp conversions
For 2.18
========
DBM storage of awk arrays. Try to allow multiple dbm packages
General sub functions:
edit(line, pat, sub) and gedit(line, pat, sub)
that return the substituted strings and allow \1 etc. in the sub
string.
? Have strftime() pay attention to the value of ENVIRON["TZ"]
For 2.19
========
Add chdir and stat built-in functions.
Add function pointers as valid variable types.
Add an `ftw' built-in function that takes a function pointer.
Do an optimization pass over parse tree?
For 2.20 or later:
==================
Add variables similar to C's __FILE__ and __LINE__ for better diagnostics
from within awk programs.
Add an explicit concatenation operator and assignment version.
? Add a switch statement
Add the ability to seek on an open file and retrieve the current file position.
Add lint checking everywhere, including check for use of builtin vars.
only in new awk.
"restart" keyword
Add |&
Make awk '/foo/' files... run at egrep speeds
Do a reference card
Allow OFMT and CONVFMT to be other than a floating point format.
Allow redefining of builtin functions?
Make it faster and smaller.
For 3.x:
========
Create a gawk compiler?
Create a gawk-to-C translator? (or C++??)
Provide awk profiling and debugging.