frawk is a small programming language for writing short programs processing
textual data. To a first approximation, it is an implementation of the
AWK language; many common Awk programs
produce equivalent output when passed to frawk. You might be interested in frawk
if you want your scripts to handle escaped CSV/TSV like standard Awk fields, or
if you want your scripts to execute faster.
The info subdirectory has more in-depth information on frawk:
Overview
what frawk is all about, how it differs from Awk.
Types: A
quick gloss on frawk's approach to types and type inference.
Parallelism
An overview of frawk's parallelism support.
Benchmarks
A sense of the relative performance of frawk and other tools when processing
large CSV or TSV files.
Builtin Functions Reference:
A list of builtin functions implemented by frawk, including some that are new
when compared with Awk.
AWK is a fascinating text-processing language, and somehow after reading the delightfully-terse The AWK Programming Language I was inspired to write an interpreter for it in Go. So here it is, feature-complete and tested against "the one true AWK" test suite.
On Windows, " is the shell quoting character, so use " around the entire AWK program on the command line, and use ' around AWK strings -- this is a non-POSIX extension to make…
great article!
also check out
ezrosent / frawk
an efficient awk-like language
frawk
frawk is a small programming language for writing short programs processing textual data. To a first approximation, it is an implementation of the AWK language; many common Awk programs produce equivalent output when passed to frawk. You might be interested in frawk if you want your scripts to handle escaped CSV/TSV like standard Awk fields, or if you want your scripts to execute faster.
The info subdirectory has more in-depth information on frawk:
frawk is…
for a Rust based AWK like language
That is awesome, however, sometimes I feel like we have taken AWK a little too far or as a teammate would say probably not far enough yet
This is a Golang POSIX AWK variant
benhoyt / goawk
A POSIX-compliant AWK interpreter written in Go
GoAWK: an AWK interpreter written in Go
AWK is a fascinating text-processing language, and somehow after reading the delightfully-terse The AWK Programming Language I was inspired to write an interpreter for it in Go. So here it is, feature-complete and tested against "the one true AWK" test suite.
Read more about how GoAWK works and performs here.
Basic usage
To use the command-line version, simply use
go install
to install it, and then run it usinggoawk
(assuming$GOPATH/bin
is in yourPATH
):On Windows,
"
is the shell quoting character, so use"
around the entire AWK program on the command line, and use'
around AWK strings -- this is a non-POSIX extension to make…