diff options
-rw-r--r-- | doc/ChangeLog | 5 | ||||
-rw-r--r-- | doc/gawk.info | 142 | ||||
-rw-r--r-- | doc/gawk.texi | 26 | ||||
-rw-r--r-- | doc/gawktexi.in | 26 |
4 files changed, 135 insertions, 64 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index 416147dd..226b7021 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2021-01-21 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in (Other Versions): Add information on more + awk implementations. + 2021-01-08 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in (gawk split records): Document that RS = "()" diff --git a/doc/gawk.info b/doc/gawk.info index 1557359e..2f8470dc 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -30723,7 +30723,7 @@ the C language and Unix-like operating systems. standards wherever possible. This means that 'gawk' uses library routines that are specified by the ISO C standard and by the POSIX operating system interface standard. The 'gawk' source code requires -using an ISO C compiler (the 1990 standard). +using an ISO C compiler (the 1999 standard). Many Unix systems do not support all of either the ISO or the POSIX standards. The 'missing_d' subdirectory in the 'gawk' distribution @@ -31479,6 +31479,10 @@ Unix 'awk' The project seems to be frozen; no new code changes have been made since approximately 2001. +Revive Awka + This project, available at <https://github.com/noyesno/awka>, + intends to fix bugs in 'awka' and add more features. + 'pawk' Nelson H.F. Beebe at the University of Utah has modified BWK 'awk' to provide timing and profiling information. It is different from @@ -31514,6 +31518,14 @@ The OpenSolaris POSIX 'awk' from <https://github.com/joyent/illumos-joyent/blob/master/usr/src/cmd/awk_xpg4>. +'frawk' + This is a language for writing short programs. "To a first + approximation, it is an implementation of the AWK language; many + common 'awk' programs produce equivalent output when passed to + 'frawk'." However, it has a number of important additional + features. The code is available at + <https://github.com/ezrosent/frawk>. + 'goawk' This is an 'awk' interpreter written in the Go programming language (https://golang.org/). It implements POSIX 'awk', with a few minor @@ -31527,7 +31539,12 @@ The OpenSolaris POSIX 'awk' a full interpreter, although because it uses Java facilities for I/O and for regexp matching, the language it supports is different from POSIX 'awk'. More information is available on the project's - home page (https://jawk.sourceforge.net). + home page (http://jawk.sourceforge.net). + +Hoijui's 'jawk' + This project, available at <https://github.com/hoijui/Jawk>, is + another 'awk' interpreter written in Java. It uses modern Java + build tools. Libmawk This is an embeddable 'awk' interpreter derived from 'mawk'. For @@ -31565,6 +31582,9 @@ Other versions (https://en.wikipedia.org/wiki/Awk_language#Versions_and_implementations) on 'awk' for information on additional versions. + An interesting collection of library functions is available at +<https://github.com/e36freak/awk-libs>. + File: gawk.info, Node: Installation summary, Prev: Other Versions, Up: Installation @@ -35148,7 +35168,7 @@ Index * backtrace debugger command: Execution Stack. (line 13) * Beebe, Nelson H.F.: Acknowledgments. (line 60) * Beebe, Nelson H.F. <1>: Numeric Functions. (line 33) -* Beebe, Nelson H.F. <2>: Other Versions. (line 78) +* Beebe, Nelson H.F. <2>: Other Versions. (line 82) * BEGIN pattern: Field Separators. (line 44) * BEGIN pattern, getline and: Getline Notes. (line 19) * BEGIN pattern, headings, adding: Print Examples. (line 42) @@ -35284,7 +35304,7 @@ Index * bug-gawk@gnu.org bug reporting address: Bug address. (line 31) * built-in functions: Functions. (line 6) * built-in functions, evaluation order: Calling Built-in. (line 30) -* BusyBox Awk: Other Versions. (line 88) +* BusyBox Awk: Other Versions. (line 92) * bytes, counting: Wc Program. (line 6) * C library functions, assert(): Assert Function. (line 6) * C library functions, getopt(): Getopt Function. (line 15) @@ -36189,6 +36209,7 @@ Index (line 29) * FPAT variable <1>: User-modified. (line 46) * frame debugger command: Execution Stack. (line 27) +* frawk: Other Versions. (line 117) * Free Documentation License (FDL): GNU Free Documentation License. (line 8) * Free Software Foundation (FSF): Manual History. (line 6) @@ -36448,8 +36469,8 @@ Index * GNU/Linux: Manual History. (line 28) * GNU/Linux <1>: I18N Example. (line 57) * GNU/Linux <2>: Glossary. (line 747) -* Go implementation of awk: Other Versions. (line 113) -* goawk: Other Versions. (line 113) +* Go implementation of awk: Other Versions. (line 125) +* goawk: Other Versions. (line 125) * Gordon, Assaf: Contributors. (line 108) * GPL (General Public License): Manual History. (line 11) * GPL (General Public License), printing: Options. (line 93) @@ -36510,7 +36531,7 @@ Index (line 53) * IGNORECASE variable, array sorting functions and: Array Sorting Functions. (line 83) -* Illumos, POSIX-compliant awk: Other Versions. (line 105) +* Illumos, POSIX-compliant awk: Other Versions. (line 109) * implementation issues, gawk, limits: Getline Notes. (line 14) * implementation issues, gawk, limits <1>: Redirection. (line 129) * implementation issues, gawk: Notes. (line 6) @@ -36614,9 +36635,9 @@ Index * Jaegermann, Michal: Acknowledgments. (line 60) * Jaegermann, Michal <1>: Contributors. (line 46) * Jannick: Contributors. (line 152) -* Java implementation of awk: Other Versions. (line 121) +* Java implementation of awk: Other Versions. (line 133) * Java programming language: Glossary. (line 466) -* jawk: Other Versions. (line 121) +* jawk: Other Versions. (line 133) * jedi knights: Undocumented. (line 6) * Johansen, Chris: Signature Program. (line 25) * join() user-defined function: Join Function. (line 18) @@ -36672,7 +36693,7 @@ Index * length of string: String Functions. (line 177) * Lesser General Public License (LGPL): Glossary. (line 489) * LGPL (Lesser General Public License): Glossary. (line 489) -* libmawk: Other Versions. (line 129) +* libmawk: Other Versions. (line 146) * libraries of awk functions: Library Functions. (line 6) * libraries of awk functions, associative arrays and: Library Names. (line 58) @@ -36837,7 +36858,7 @@ Index * naming issues, functions: Definition Syntax. (line 24) * naming issues: Library Names. (line 6) * naming rules, namespace and component names: Naming Rules. (line 6) -* Neacsu, Mircea: Other Versions. (line 132) +* Neacsu, Mircea: Other Versions. (line 149) * NetBSD: Glossary. (line 747) * networks, support for: Special Network. (line 6) * networks, programming: TCP/IP Networking. (line 6) @@ -36929,7 +36950,7 @@ Index * OFS variable <2>: User-modified. (line 116) * op-codes, trace of internal: Options. (line 198) * OpenBSD: Glossary. (line 747) -* OpenSolaris: Other Versions. (line 96) +* OpenSolaris: Other Versions. (line 100) * operating systems, BSD-based: Manual History. (line 28) * operating systems: Installation. (line 6) * operating systems, PC, gawk on, installing: PC Installation. @@ -37019,8 +37040,8 @@ Index * patterns, empty: Empty. (line 6) * patterns, counts, in a profile: Profiling. (line 118) * pawk (profiling version of Brian Kernighan's awk): Other Versions. - (line 78) -* pawk, awk-like facilities for Python: Other Versions. (line 137) + (line 82) +* pawk, awk-like facilities for Python: Other Versions. (line 154) * PC operating systems, gawk on, installing: PC Installation. (line 6) * PC operating systems, gawk on: PC Using. (line 6) * percent sign (%), %= operator: Assignment Ops. (line 129) @@ -37239,13 +37260,13 @@ Index * programming language, recipe for: History. (line 6) * programming languages, data-driven vs. procedural: Getting Started. (line 12) -* programming languages, Go: Other Versions. (line 113) +* programming languages, Go: Other Versions. (line 125) * programming languages, Ada: Glossary. (line 11) * programming languages, Java: Glossary. (line 466) * pwcat program: Passwd Functions. (line 23) * q debugger command (alias for quit): Miscellaneous Debugger Commands. (line 100) -* QSE awk: Other Versions. (line 143) +* QSE awk: Other Versions. (line 160) * qualified name, definition of: Qualified Names. (line 6) * qualified name, use of: Qualified Names. (line 17) * Quanstrom, Erik: Alarm Program. (line 8) @@ -37254,7 +37275,7 @@ Index * question mark (?), regexp operator <1>: GNU Regexp Operators. (line 62) * question mark (?), ?: operator: Precedence. (line 91) -* QuikTrim Awk: Other Versions. (line 147) +* QuikTrim Awk: Other Versions. (line 164) * quit debugger command: Miscellaneous Debugger Commands. (line 100) * QUIT signal (MS-Windows): Profiling. (line 220) @@ -37594,7 +37615,7 @@ Index * sleep() extension function: Extension Sample Time. (line 31) * Smith, Gavin: Acknowledgments. (line 75) -* Solaris, POSIX-compliant awk: Other Versions. (line 96) +* Solaris, POSIX-compliant awk: Other Versions. (line 100) * sort array: String Functions. (line 42) * sort array indices: String Functions. (line 42) * sort function, arrays, sorting: Array Sorting Functions. @@ -37609,17 +37630,18 @@ Index * source code, mawk: Other Versions. (line 39) * source code, awka: Other Versions. (line 64) * source code, pawk (profiling version of Brian Kernighan's awk): Other Versions. - (line 78) -* source code, BusyBox Awk: Other Versions. (line 88) -* source code, Solaris awk: Other Versions. (line 96) -* source code, Illumos awk: Other Versions. (line 105) -* source code, goawk: Other Versions. (line 113) -* source code, jawk: Other Versions. (line 121) -* source code, libmawk: Other Versions. (line 129) -* source code, embeddable awk interpreter: Other Versions. (line 132) -* source code, pawk (Python version): Other Versions. (line 137) -* source code, QSE awk: Other Versions. (line 143) -* source code, QuikTrim Awk: Other Versions. (line 147) + (line 82) +* source code, BusyBox Awk: Other Versions. (line 92) +* source code, Solaris awk: Other Versions. (line 100) +* source code, Illumos awk: Other Versions. (line 109) +* source code, frawk: Other Versions. (line 117) +* source code, goawk: Other Versions. (line 125) +* source code, jawk: Other Versions. (line 133) +* source code, libmawk: Other Versions. (line 146) +* source code, embeddable awk interpreter: Other Versions. (line 149) +* source code, pawk (Python version): Other Versions. (line 154) +* source code, QSE awk: Other Versions. (line 160) +* source code, QuikTrim Awk: Other Versions. (line 164) * source file, show in debugger: Debugger Info. (line 37) * source files, search path for: Programs Exercises. (line 70) * sparse arrays: Array Intro. (line 76) @@ -38568,37 +38590,37 @@ Node: Bug address1259606 Node: Usenet1262588 Node: Maintainers1263592 Node: Other Versions1264777 -Node: Installation summary1271865 -Node: Notes1273074 -Node: Compatibility Mode1273868 -Node: Additions1274650 -Node: Accessing The Source1275575 -Node: Adding Code1277012 -Node: New Ports1283231 -Node: Derived Files1287606 -Ref: Derived Files-Footnote-11293266 -Ref: Derived Files-Footnote-21293301 -Ref: Derived Files-Footnote-31293899 -Node: Future Extensions1294013 -Node: Implementation Limitations1294671 -Node: Extension Design1295881 -Node: Old Extension Problems1297025 -Ref: Old Extension Problems-Footnote-11298543 -Node: Extension New Mechanism Goals1298600 -Ref: Extension New Mechanism Goals-Footnote-11301964 -Node: Extension Other Design Decisions1302153 -Node: Extension Future Growth1304266 -Node: Notes summary1304872 -Node: Basic Concepts1306030 -Node: Basic High Level1306711 -Ref: figure-general-flow1306993 -Ref: figure-process-flow1307678 -Ref: Basic High Level-Footnote-11310979 -Node: Basic Data Typing1311164 -Node: Glossary1314492 -Node: Copying1346377 -Node: GNU Free Documentation License1383920 -Node: Index1409040 +Node: Installation summary1272642 +Node: Notes1273851 +Node: Compatibility Mode1274645 +Node: Additions1275427 +Node: Accessing The Source1276352 +Node: Adding Code1277789 +Node: New Ports1284008 +Node: Derived Files1288383 +Ref: Derived Files-Footnote-11294043 +Ref: Derived Files-Footnote-21294078 +Ref: Derived Files-Footnote-31294676 +Node: Future Extensions1294790 +Node: Implementation Limitations1295448 +Node: Extension Design1296658 +Node: Old Extension Problems1297802 +Ref: Old Extension Problems-Footnote-11299320 +Node: Extension New Mechanism Goals1299377 +Ref: Extension New Mechanism Goals-Footnote-11302741 +Node: Extension Other Design Decisions1302930 +Node: Extension Future Growth1305043 +Node: Notes summary1305649 +Node: Basic Concepts1306807 +Node: Basic High Level1307488 +Ref: figure-general-flow1307770 +Ref: figure-process-flow1308455 +Ref: Basic High Level-Footnote-11311756 +Node: Basic Data Typing1311941 +Node: Glossary1315269 +Node: Copying1347154 +Node: GNU Free Documentation License1384697 +Node: Index1409817 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 414d5d8c..7f18649a 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -41917,7 +41917,7 @@ The source code for @command{gawk} generally attempts to adhere to formal standards wherever possible. This means that @command{gawk} uses library routines that are specified by the ISO C standard and by the POSIX operating system interface standard. -The @command{gawk} source code requires using an ISO C compiler (the 1990 +The @command{gawk} source code requires using an ISO C compiler (the 1999 standard). Many Unix systems do not support all of either the ISO or the @@ -42855,6 +42855,10 @@ To get @command{awka}, go to @url{https://sourceforge.net/projects/awka}. The project seems to be frozen; no new code changes have been made since approximately 2001. +@item Revive Awka +This project, available at @uref{https://github.com/noyesno/awka}, +intends to fix bugs in @command{awka} and add more features. + @cindex Beebe, Nelson H.F.@: @cindex @command{pawk} (profiling version of Brian Kernighan's @command{awk}) @cindex source code @subentry @command{pawk} (profiling version of Brian Kernighan's @command{awk}) @@ -42899,6 +42903,16 @@ However, that project was ended and the website shut down. Fortunately, the makes this implementation available. You can view the files one at a time from @uref{https://github.com/joyent/illumos-joyent/blob/master/usr/src/cmd/awk_xpg4}. +@cindex @command{frawk} +@cindex source code @subentry @command{frawk} +@item @command{frawk} +This is a language for writing short programs. ``To a first +approximation, it is an implementation of the AWK language; +many common @command{awk} programs produce equivalent output +when passed to @command{frawk}.'' However, it has a number of +important additional features. The code is available at +@uref{https://github.com/ezrosent/frawk}. + @cindex @command{goawk} @cindex Go implementation of @command{awk} @cindex source code @subentry @command{goawk} @@ -42920,7 +42934,12 @@ This is an interpreter for @command{awk} written in Java. It claims to be a full interpreter, although because it uses Java facilities for I/O and for regexp matching, the language it supports is different from POSIX @command{awk}. More information is available on the -@uref{https://jawk.sourceforge.net, project's home page}. +@uref{http://jawk.sourceforge.net, project's home page}. + +@item Hoijui's @command{jawk} +This project, available at @uref{https://github.com/hoijui/Jawk}, +is another @command{awk} interpreter written in Java. It uses +modern Java build tools. @item Libmawk @cindex libmawk @@ -42971,6 +42990,9 @@ Wikipedia article} on @command{awk} for information on additional versions. @end table +An interesting collection of library functions is available +at @uref{https://github.com/e36freak/awk-libs}. + @node Installation summary @appendixsec Summary diff --git a/doc/gawktexi.in b/doc/gawktexi.in index 3f4ec89d..f376a4dc 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -40814,7 +40814,7 @@ The source code for @command{gawk} generally attempts to adhere to formal standards wherever possible. This means that @command{gawk} uses library routines that are specified by the ISO C standard and by the POSIX operating system interface standard. -The @command{gawk} source code requires using an ISO C compiler (the 1990 +The @command{gawk} source code requires using an ISO C compiler (the 1999 standard). Many Unix systems do not support all of either the ISO or the @@ -41752,6 +41752,10 @@ To get @command{awka}, go to @url{https://sourceforge.net/projects/awka}. The project seems to be frozen; no new code changes have been made since approximately 2001. +@item Revive Awka +This project, available at @uref{https://github.com/noyesno/awka}, +intends to fix bugs in @command{awka} and add more features. + @cindex Beebe, Nelson H.F.@: @cindex @command{pawk} (profiling version of Brian Kernighan's @command{awk}) @cindex source code @subentry @command{pawk} (profiling version of Brian Kernighan's @command{awk}) @@ -41796,6 +41800,16 @@ However, that project was ended and the website shut down. Fortunately, the makes this implementation available. You can view the files one at a time from @uref{https://github.com/joyent/illumos-joyent/blob/master/usr/src/cmd/awk_xpg4}. +@cindex @command{frawk} +@cindex source code @subentry @command{frawk} +@item @command{frawk} +This is a language for writing short programs. ``To a first +approximation, it is an implementation of the AWK language; +many common @command{awk} programs produce equivalent output +when passed to @command{frawk}.'' However, it has a number of +important additional features. The code is available at +@uref{https://github.com/ezrosent/frawk}. + @cindex @command{goawk} @cindex Go implementation of @command{awk} @cindex source code @subentry @command{goawk} @@ -41817,7 +41831,12 @@ This is an interpreter for @command{awk} written in Java. It claims to be a full interpreter, although because it uses Java facilities for I/O and for regexp matching, the language it supports is different from POSIX @command{awk}. More information is available on the -@uref{https://jawk.sourceforge.net, project's home page}. +@uref{http://jawk.sourceforge.net, project's home page}. + +@item Hoijui's @command{jawk} +This project, available at @uref{https://github.com/hoijui/Jawk}, +is another @command{awk} interpreter written in Java. It uses +modern Java build tools. @item Libmawk @cindex libmawk @@ -41868,6 +41887,9 @@ Wikipedia article} on @command{awk} for information on additional versions. @end table +An interesting collection of library functions is available +at @uref{https://github.com/e36freak/awk-libs}. + @node Installation summary @appendixsec Summary |