Scripting languages like Awk, Perl and Python are very useful because they allow rapid development of small programs for that "glue" together other programs and perform text filtering operations. However, they have the disadvantage that their syntax can be obscure. For example, for those who don't continuously write Perl scripts, Perl can be a "write only" language. That is, only the author of a Perl script can understand it and even for the author understanding fades over time.
Python is interesting because it has much of the power of Perl, but the syntax of Python is more readable and closer to a programming language like C.
SPARK: the Scanning, Parsing, and Rewriting Kit
SPARK is a framework in Python for doing language processing. It is described in Compiling Little Languages in Python by John Aycock, Department of Computer Science, University of Victoria, Canada.
back to Notes on Software and Software Engineering