GNU Info

Info Node: (gawk.info)Other Versions

(gawk.info)Other Versions


Prev: Bugs Up: Installation
Enter node , (file) or (file)node

Other Freely Available `awk' Implementations
============================================

     It's kind of fun to put comments like this in your awk code.
     `// Do C++ comments work? answer: yes! of course'
     Michael Brennan

   There are three other freely available `awk' implementations.  This
minor node briefly describes where to get them:

Unix `awk'
     Brian Kernighan has made his implementation of `awk' freely
     available.  You can retrieve this version via the World Wide Web
     from his home page.(1) It is available in several archive formats:

    Shell archive
          `http://cm.bell-labs.com/who/bwk/awk.shar'

    Compressed `tar' file
          `http://cm.bell-labs.com/who/bwk/awk.tar.gz'

    Zip file
          `http://cm.bell-labs.com/who/bwk/awk.zip'

     This version requires an ISO C (1990 standard) compiler; the C
     compiler from GCC (the GNU Compiler Collection) works quite nicely.

     Note: Extensions in the Bell Laboratories `awk', for a list
     of extensions in this `awk' that are not in POSIX `awk'.

`mawk'
     Michael Brennan has written an independent implementation of `awk',
     called `mawk'.  It is available under the GPL (Note: GNU General
     Public License.), just as `gawk' is.

     You can get it via anonymous `ftp' to the host `ftp.whidbey.net'.
     Change directory to `/pub/brennan'.  Use "binary" or "image" mode,
     and retrieve `mawk1.3.3.tar.gz' (or the latest version that is
     there).

     `gunzip' may be used to decompress this file. Installation is
     similar to `gawk''s (Note: Compiling and Installing `gawk' on
     Unix.).

     `mawk' has the following extensions that are not in POSIX `awk':

        * The `fflush' built-in function for flushing buffered output
          (Note: Input/Output Functions.).

        * The `**' and `**=' operators (*note Arithmetic Operators:
          Arithmetic Ops.  and also see *Note Assignment Expressions:
          Assignment Ops).

        * The use of `func' as an abbreviation for `function' (Note:
          Function Definition Syntax.).

        * The `\x' escape sequence (Note: Escape Sequences).

        * The `/dev/stdout', and `/dev/stderr' special files (Note:
          Special File Names in `gawk'.).  Use `"-"'
          instead of `"/dev/stdin"' with `mawk'.

        * The ability for `FS' and for the third argument to `split' to
          be null strings (Note: Making Each Character a Separate
          Field.).

        * The ability to delete all of an array at once with `delete
          ARRAY' (Note: The `delete' Statement.).

        * The ability for `RS' to be a regexp (Note: How Input Is Split
          into Records.).

        * The `BINMODE' special variable for non-Unix operating systems
          (Note: Using `gawk' on PC Operating Systems.).

     The next version of `mawk' will support `nextfile'.

`awka'
     Written by Andrew Sumner, `awka' translates `awk' programs into C,
     compiles them, and links them with a library of functions that
     provides the core `awk' functionality.  It also has a number of
     extensions.

     The `awk' translator is released under the GPL, and the library is
     under the LGPL.

     To get `awka', go to `http://awka.sourceforge.net'.  You can reach
     Andrew Sumner at <andrew_sumner@bigfoot.com>.

   ---------- Footnotes ----------

   (1) `http://cm.bell-labs.com/who/bwk'


automatically generated by info2www version 1.2.2.9