Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • People need to be able to do cool shit with a minimum of fuss. Writing amazing text filters with a command line was pretty slick ten, fifteen years ago. Now, who cares? So what CAN you do with Perl that is Amazing?
    --

    --
    xoa

    • It's still all about CPAN. I write a maintenance utility for my company's product, which runs on Windows 2003 and supports MS-SQL and Oracle databases. I use ActiveState's products to compile .exe's and hide the Perl from the users. I started with Perl because I already knew it and didn't need to buy a new toolset; I keep using it because CPAN keeps making the job easier. When I needed to produce historical graphs, I brought in an RRD module and it just worked. When I needed to check a web page for something, I brought in LWP and it just worked. I'm able to add significant value without un-fun levels of work. I also like that I can use Perltidy and PerlCritic to ensure that my code is clean and neat before I publish; the vim plugins make that easy too. That's what draws me to Perl; what pushes me away is the fact that a lot of those awesome CPAN modules are unmaintained or don't work as well on Windows. I can't go to Perl 5.10 because I need modules that aren't updated. I have to detect if a directory is on a network drive because stat() won't work (yes, I know that's core, not CPAN). RRD files have to be written to cwd because a Win32 path name makes the module barf. All my path names have to be converted to 8.3 short names to ensure proper handling. The memory usage of Perl is through the roof, my program uses 45 mb just to load its CPAN modules and connect to the database. It's not enough to drive me to reinventing the wheel in Python, but it's troubling.