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 x Fix FILENAME to have an initial value of "", not "-" 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.