Page 1 of 1

better awk

Posted: Fri Aug 19, 2005 11:16 pm
by Dmi
I wrote a small context to imitate awk operation
here is example:

Code: Select all

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

Code: Select all

$ awk -F: '
/^ro/{print $1,$3}
/^daem/{print $3,$1}
' /etc/passwd
here is the origin:
http://en.feautec.pp.ru/SiteNews/awklsp

Version update

Posted: Sat Aug 20, 2005 4:58 pm
by Dmi
Small changes in documentation.
Added function (rcase) - like (case) but for string pattern match.

Posted: Sat Aug 20, 2005 5:56 pm
by statik
awsome.

Minor corrections

Posted: Sat Aug 20, 2005 11:37 pm
by Dmi
corrected predefined value for field separator.

statik: I found, that description is bigger than the code :-)
But... aren't (rawk) and (rcase) useful?

Posted: Sun Aug 21, 2005 8:30 am
by pjot
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