Blessed are the toolmakers, writes Piers Cawley. I agree.
Maybe it seems counterintuitive that some of the best toolsmiths I know are stalwart Perl programmers. I know the stereotype: we’re all hackers and script kiddies who glue together applications, couldn’t commit to a static type declaration if we could recognize one, and write unmaintainable piles of goo once we get past ten lines of code (as if you need more than ten lines of code to do anything in Perl).
Yet that doesn’t explain why there are so many useful libraries for programmers for and by Perl programmers. Maybe it’s the spirit of tinkering, or maybe it’s that the language design deliberately avoided making polemic statements about one particular way to do thing, or maybe some of the criticism is correct in that there are some definite warts on the language. (I think I can say that, as I’ve written and used Perl 6 code that does not suffer from those mistakes.)
There’s a definite sense of play required to solve a problem by inventing a new tool rather than giving up or doing it by hand or writing a one-off that you never refine or, worse, throw away immediately.
I tried to document that sense of play and my amazement at the wonderful things people can and do with this language in Perl Hacks. We found 101. There are probably 1001 more within reach.
I’m sure the same is true of other languages as well. Watch the toolmakers; they’re the ones pushing languages and libraries and ideas in completely new directions.