aboutsummaryrefslogtreecommitdiffstats
path: root/FUTURES
blob: e511acbadb9e3180222ff0436ddb9085caeceaaf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
  Copyright (C) 2005, 2006, 2010, 2011, 2012 Free Software Foundation, Inc.
  
  Copying and distribution of this file, with or without modification,
  are permitted in any medium without royalty provided the copyright
  notice and this notice are preserved.

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.

For 4.1
=======
	DONE: Merge gawk/pgawk/dgawk into one executable

	DONE: Merge xmlgawk -l feature

	DONE: Merge xmlgawk XML extensions (via source forge project that
	      works with new API)

	DONE: Integrate MPFR to provide high precision arithmetic.

	DONE: Implement designed API for loadable modules

	DONE: Redo the loadable modules interface from the awk level.

	DONE: Consider really implementing BWK awk SYMTAB for seeing what
	global variables are defined.

	Continue code reviews / code cleanup
		- Nuking overly deep macros...

	Consider making shadowed variables a warning and not
	a fatal warning when -lint=fatal

For 4.2
=======
	Think about how to generalize indirect access. Manuel Collado
	suggests things like

		foo = 5
		@"foo" += 4

	Also needed:

		indirect calls of built-ins
		indirect calls of extension functions
		indirect through array elements, not just scalar variables

	Consider relaxing the strictness of --posix.

	Consider removing use of and/or need for the protos.h file.

	Consider moving var_value info into Node_var itself
	to reduce memory usage.

	Rework management of array index storage. (Partially DONE.)

	DBM storage of awk arrays. Try to allow multiple dbm packages.

	? Add an optional base to strtonum, allowing 2-36.

	? Optional third argument for index indicating where to start the
	search.

	?? A RECLEN variable for fixed-length record input. PROCINFO["RS"]
	would be "RS" or "RECLEN" depending upon what's in use.
	*** Could be done as an extension.

	?? Use a new or improved dfa and/or regex library.

	??? Gnulib

Probably never:
===============
	Do an optimization pass over parse tree?

	Consider integrating Fred Fish's DBUG library into gawk.

	Make 	awk '/foo/' files...	run at egrep speeds (how?)

	? Have strftime() pay attention to the value of ENVIRON["TZ"]

	Add a lint check if the return value of a function is used but
	the function did not supply a value.

	Consider making gawk output +nan for NaN values so that it
	will accept its own output as input.
		NOTE: Investigated this.  GLIBC formats NaN as '-nan'
		and -NaN as 'nan'.  Dealing with this is not simple.