From Newsgroup: comp.lang.awk
On 09.08.2025 04:38, Kaz Kylheku wrote:
On 2025-08-08, Janis Papanagnou <janis_papanagnou+ng@hotmail.com> wrote:
Your post appears to me to be completely misleading! According to the
examples it's NOT an Awk library at all. It's a new language with new
syntax (running with Awk just as its vehicle).
To be fair, there are languages in which such a thing is considered
a library, like Lisps!
Well, people use all sorts of [(IMO) inappropriate] terminology and
flimsy comparisons to advertise their babies.
Rawk has a translator which is written in Awk (directly, so if you know nothing but Awk, you can understand the translator and work on it),
(...and "work on" the translator??? - To create yet another dialect
of a new language or dialect?)
and
the target language is Awk. You need an Awk program to run both the translator and the resulting code.
But so what? - Cim or Genie are also written in "C" and also produce
"C" [intermediate] code, yet clearly creating own languages (Simula
and Algol 68, respectively). - It's not exactly the same here since
they are not extending the "C" language, but the underlying language
platform is hardly an argument against this being a new language.
The only thing that's missing is that you can't launch an interactive
Awk session where you load Rawk, and then write Rawk programs; it is
batch translated. But otherwise it is locked squarely into your Awk ecosystem.
Moreover, the goal of this language is to implement Awk, but with
extensions, and not an entirely different language. Awk programs are supposedly valid Rawk programs. It's kind of like Objective C to C,
... or something.
The point is not that you can still use Awk and ignore the extensions.
The point is that, as opposed to an Awk library with Awk functions, a
new syntax (for this new language) has to be used. That got not clear
from the post. But from the examples and statements on the referenced
pages it's quite obvious, e.g.
$greet = (name) -> { return ...; };
There they also write
"... provides a quick snapshot of rawk's syntax and language features."
here clearly exposing its nature!
I was not objecting to yet another new language/dialect introduced[*],
but just that I considered the post completely misleading.
Janis
[*] Although I personally dislike attitudes of "write a new X language
to make the Y language appear more like the Z language". (But mileages
likely vary.)
It has fewer non-Awk dependencies than that cppawk think I wrote
a few years ago, which has a shell script driver, and requires the GNU preprocessor cpp.
--- Synchronet 3.21a-Linux NewsLink 1.2