About Us Documentation

Contact Site Map



GAWK Manual - Index Go to the previous chapter.


Unresolved Issues:
1. From:  (Michal Jaegermann)
   Examples of usage tend to suggest that /../ and ".." delimiters
   can be used for regular expressions, even if definition is consistently
   using /../.  I am not sure what the real rules are and in particular
   what of the following is a bug and what is a feature:
   # This program matches everything
      '"\(" { print }'
   # This one complains about mismatched parenthesis
      '$0 ~ "\(" { print }'
   # This one behaves in an expected manner
      '/\(/ { print }'
   You may also try to use "\(" as an argument to match() to see what
   will happen.

2. From ADR.

The posix (and original Unix!) notion of awk values as both number and string values needs to be put into the manual. This involves major and minor rewrites of most of the manual, but should help in clarifying many of the weirder points of the language.

3. From ADR.

The manual should be reorganized. Expressions should be introduced early, building up to regexps as expressions, and from there to their use as patterns and then in actions. Built-in vars should come earlier in the manual too. The 'expert info' sections marked with comments should get their own sections or subsections with nodes and titles. The manual should be gone over thoroughly for indexing.

4. From ADR.

Robert J. Chassell points out that awk programs should have some indication of how to use them. It would be useful to perhaps have a "programming style" section of the manual that would include this and other tips.

5. From ADR in response to (This would make the beginnings of a good "puzzles" section...)

Date: Mon, 2 Dec 91 10:08:05 EST From: gatech!cc!arnold (Arnold Robbins) To: cs.dal.ca!david, uunet.ca!moraes Subject: redirecting to /dev/stderr Cc: skeeve!arnold, boeing.com!brennan, research.att.com!bwk In 2.13.3 the following program no longer dumps core: BEGIN { print "hello" > /dev/stderr ; exit(1) } Instead, it creates a file named `0' with the word `hello' in it. AWK semantics strikes again. The meaning of the statement is print "hello" > (($0 ~ /dev/) stderr) /dev/ tests $0 for the pattern `dev'. This yields a 0. The variable stderr, having never been used, has a null string in it. The concatenation yields a string value of "0" which is used as the file name. Sigh. I think with some more time I can come up with a decent fix, but it will probably only print a diagnostic with -Wlint. Arnold