in reply to Bling Bling (or: Teaching Perl to Teenagers)
As BrowserUK mentioned above, maybe Perl isn't the best tool for this particular job.
I stated CS using C++. The next semester, in addition to the next intro class (taught in C++), I took a VB elective. The VB class was a TON of fun, and much easier to pay attention to and get engaged with.
When I went to University, I decided to take the into classes again, as they were taught in Java and I thought it would be good to get exposed to that language. They had developed a simple graphics toolkit that had basic capabilities, designed to remove as much complexity as possible while still being useful in an Into to CS type class. This toolkit, as well as a bunch of assignments that require the use of graphics while still teaching CS fundamentals, are all on the University at Buffalo's CS website, under the class homepages of various professors.
Although not Perl, this might meet your needs well - the graphical portion of the work is interesting and engaging (and the assignments are just plain fun), and it teaches good CS fundamentals. I think the licensing would allow you to use it for educational purposes - I haven't looked at it in quite a while but seem to remember that being the licensing terms. You should be able to find a copy and assignments if you look for the class homepages for CSE 115 and/or CSE 116 at the University at Buffalo's CSE site. Here's one professor's archive of class home pages to start with: http://www.cse.buffalo.edu/faculty/alphonce/MyWeb/Teaching/Courses/