better awk

Started by Dmi, August 19, 2005, 04:16:43 PM

Previous topic - Next topic

Dmi

I wrote a small context to imitate awk operation

here is example:
(awk (read-file "/etc/passwd")
  (set 'FS ":")
  (rawk S
    ("^ro" (println (F 0) " " (F 2)))
    ("^daem" (println (F 2) " " (F 0)))))

is analog for:
$ awk -F: '
/^ro/{print $1,$3}
/^daem/{print $3,$1}
' /etc/passwd

here is the origin:

http://en.feautec.pp.ru/SiteNews/awklsp">//http://en.feautec.pp.ru/SiteNews/awklsp
WBR, Dmi

Dmi

#1
Small changes in documentation.

Added function (rcase) - like (case) but for string pattern match.
WBR, Dmi

statik

#2
awsome.
-statik

Dmi

#3
corrected predefined value for field separator.



statik: I found, that description is bigger than the code :-)

But... aren't (rawk) and (rcase) useful?
WBR, Dmi

pjot

#4
Hi DMI,



My previous favorite language used to be AWK (now it's newLisp of course), so I find your experiments very interesting. For my job I still use AWK a lot. Now I can port some of my AWK stuff easily to newLisp.



Thanks!



Peter