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 6cf1fdb2..292adb2b 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 bf9a88d7..89fe1ebb 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -30770,7 +30770,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 @@ -31526,6 +31526,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 @@ -31561,6 +31565,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 @@ -31574,7 +31586,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 @@ -31612,6 +31629,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 @@ -35195,7 +35215,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) @@ -35331,7 +35351,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) @@ -36236,6 +36256,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) @@ -36495,8 +36516,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) @@ -36557,7 +36578,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) @@ -36661,9 +36682,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) @@ -36719,7 +36740,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) @@ -36884,7 +36905,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) @@ -36976,7 +36997,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. @@ -37066,8 +37087,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) @@ -37286,13 +37307,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) @@ -37301,7 +37322,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) @@ -37641,7 +37662,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. @@ -37656,17 +37677,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) @@ -38616,37 +38638,37 @@ Node: Bug address1261987 Node: Usenet1264969 Node: Maintainers1265973 Node: Other Versions1267158 -Node: Installation summary1274246 -Node: Notes1275455 -Node: Compatibility Mode1276249 -Node: Additions1277031 -Node: Accessing The Source1277956 -Node: Adding Code1279393 -Node: New Ports1285612 -Node: Derived Files1289987 -Ref: Derived Files-Footnote-11295647 -Ref: Derived Files-Footnote-21295682 -Ref: Derived Files-Footnote-31296280 -Node: Future Extensions1296394 -Node: Implementation Limitations1297052 -Node: Extension Design1298262 -Node: Old Extension Problems1299406 -Ref: Old Extension Problems-Footnote-11300924 -Node: Extension New Mechanism Goals1300981 -Ref: Extension New Mechanism Goals-Footnote-11304345 -Node: Extension Other Design Decisions1304534 -Node: Extension Future Growth1306647 -Node: Notes summary1307253 -Node: Basic Concepts1308411 -Node: Basic High Level1309092 -Ref: figure-general-flow1309374 -Ref: figure-process-flow1310059 -Ref: Basic High Level-Footnote-11313360 -Node: Basic Data Typing1313545 -Node: Glossary1316873 -Node: Copying1348758 -Node: GNU Free Documentation License1386301 -Node: Index1411421 +Node: Installation summary1275023 +Node: Notes1276232 +Node: Compatibility Mode1277026 +Node: Additions1277808 +Node: Accessing The Source1278733 +Node: Adding Code1280170 +Node: New Ports1286389 +Node: Derived Files1290764 +Ref: Derived Files-Footnote-11296424 +Ref: Derived Files-Footnote-21296459 +Ref: Derived Files-Footnote-31297057 +Node: Future Extensions1297171 +Node: Implementation Limitations1297829 +Node: Extension Design1299039 +Node: Old Extension Problems1300183 +Ref: Old Extension Problems-Footnote-11301701 +Node: Extension New Mechanism Goals1301758 +Ref: Extension New Mechanism Goals-Footnote-11305122 +Node: Extension Other Design Decisions1305311 +Node: Extension Future Growth1307424 +Node: Notes summary1308030 +Node: Basic Concepts1309188 +Node: Basic High Level1309869 +Ref: figure-general-flow1310151 +Ref: figure-process-flow1310836 +Ref: Basic High Level-Footnote-11314137 +Node: Basic Data Typing1314322 +Node: Glossary1317650 +Node: Copying1349535 +Node: GNU Free Documentation License1387078 +Node: Index1412198 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 078a0ec8..ec8690ca 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -42144,7 +42144,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 @@ -43082,6 +43082,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}) @@ -43126,6 +43130,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} @@ -43147,7 +43161,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 @@ -43198,6 +43217,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 78ad076d..4228d098 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -41041,7 +41041,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 @@ -41979,6 +41979,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}) @@ -42023,6 +42027,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} @@ -42044,7 +42058,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 @@ -42095,6 +42114,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 |