http://www.perlmonks.org?node_id=198437


in reply to I can't get no...

I'm sometimes a little set back by how much C I've forgotten since taking up perl a couple of years ago. I get over it by thinking of how much fun I'm having.

The big splashy palette of Ways to Do It does indeed give me the uneasy feeling that I'm missing something. I make a point of trying offbeat functions, tailoring data structures, and trying 'impossible' tasks, and that helps me keep learning.

One impossible thing I tried was a pure-perl user-space Linux device driver, talking directly to a kernel module through ioctl. Fun! Not terrifically successful, but it taught me pack and unpack - not to mention the exotic ioctl itself.

One thing I most appreciate about Perl is its similarity to C. It's not just the syntax, though that's important. but also the deep structure of its interaction with the OS. A system call does not return till it's done. The deferred operations like file write-behind behave the same as in C. The concept of sequence points, where side effects can be known to be complete, is similar, allowing reliable serialization. IPC, network applications, file locking, process forking and, increasingly, threading are all convenient and reliable. No other language I know matches the combination of depth, comfort, and effectiveness that Perl offers.

After Compline,
Zaxo