diff options
Diffstat (limited to 'contrib/awk/FUTURES')
-rw-r--r-- | contrib/awk/FUTURES | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/contrib/awk/FUTURES b/contrib/awk/FUTURES new file mode 100644 index 0000000..13a312c --- /dev/null +++ b/contrib/awk/FUTURES @@ -0,0 +1,108 @@ +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 developers to help keep themselves on track, please +don't bug us too much about schedules or what all this really means. + +With the 3.0 release, we are acknowledging that awk is not PERL, nor should +it become PERL. (To paraphrase Dennis Ritchie, "If you want PERL, you +know where to get it.") + +The focus on the future is thus narrowed to performance and functional +enhancements, with only minor plans for significant new features. + +For 3.0 +======= + DONE: Move to autoconf-based configure system. + + DONE: Allow RS to be a regexp. + + DONE: RT variable to hold text of record terminator + + DONE: split() with null string as third arg to split up strings + + DONE: Analogously, setting FS="" would split the input record into + individual characters. + + DONE: Generalize IGNORECASE + - any value makes it work, not just numeric non-zero + - make it apply to *all* string comparisons + + DONE: Incorporate newer dfa.c and regex.c + + DONE: Go to POSIX regexps + + DONE: Make regex + dfa less dependant on gawk header file includes + + DONE: Source code formatting cleaned up and regularized + + DONE: Clean up code by isolating system-specific functions in + separate files. + + DONE: General sub function: + gensub(pat, sub, global_flag[, line]) + that return the substituted strings and allow \1 etc. + in the sub string. + + DONE: Add AWKPATH to ENVIRON if it's not there + + DONE: Undertake significant directory reorganization. + + DONE: Extensive manual cleanup: + Use of texinfo 2.0 features + Lots more examples + Document posix regexps + Document all of the above. + +In 3.1 +====== + A PROCINFO array to replace /dev/pid, /dev/user, et al. + + DONE: Use mmap to read input files on systems that support it. + + Add `abort' statement a la Thompson awk. + + Consider removing use of and/or need for the protos.h file. + + Use a new or improved dfa. + + Integrate GNU NLS support. + + Bring out hooks for NLS support into gawk itself. + + DBM storage of awk arrays. Try to allow multiple dbm packages. + + Use GNU malloc. + + Use rx instead of regex. + + DONE: Do a reference card. + + ? Have strftime() pay attention to the value of ENVIRON["TZ"] + + Additional manual features: + Document use of dbm arrays + Document NLS support + ? Add exercises + ? Add an error messages section to the manual + ? A section on where gawk is bounded + regex + i/o + sun fp conversions + +For 3.2 +======= + Add a lint check if the return value of a function is used but + the function did not supply a value. + + Do an optimization pass over parse tree? + + Make awk '/foo/' files... run at egrep speeds + +For 4.x: +======== + +Create a gawk compiler? + +Create a gawk-to-C translator? (or C++??) + +Provide awk profiling and debugging. |