When I first read Nick Montfort’s #!, I shared my initial response via Twitter in the form of a Perl one-liner. Since I’m teaching #! this semester, I’ve been taking a second look and growing in my appreciation and understanding of the Perl poems in particular, so I thought I’d revisit that review and expand on it with a different approach and a few other variations.

First, as I tweeted back in October:

perl -e '{print$"=''x($.+=.05),map{$_ x($.*.1)}qw(# !);redo}'

But as I thought about it more, I realized that first response was too impulsive, too scattered. Immature and derivative — the first efforts of a would-be critic grasping toward a fawning homage.

Instead, I invite you to consider three variations on a theme, which I hope demonstrate a bit more sophistication on my part:

perl -e '{print map{"#"x$_,"!"x($=-$_ ),$/}(abs(cos(($.+=1)*.0001)*$=));redo;} #2.1'
perl -e '{print map{"#"x($_/2),"!"x($=-$_),$/}(abs(cos(($.++)*.0001)*$=));redo;} #2.2'
perl -e '{print map{"#"x$_,"!"x$_,$/}(abs(sin(($.++)*.0001)*$=/2));redo;} #2.3'

(NB: If you’re using a Mac or something else that has Perl installed, open a terminal and paste one of those lines in. Hit enter. After a while, do Ctrl-c to stop it.)