I like it, but I don't care for the operator overloading.
I've only used this module in a few personal projects, but it just simplifies so much; I love it! One of the most convenient IO interfaces I've ever seen.
Perl is a powerful programming language. This module shows just how powerful. Caveat Emptor; use this if you already are familiar with other IO modules on the CPAN, this one sort of summarizes them and collects them in one place, because it can.
If you are a an experienced perl hacker, this module will save you time and effort. If you are newbie please note that there are clearer, better documented, dare I say more standard interfaces, to Input and Output in perl.
With that said, clearly there is some serious voodoo going on here and judging by the other modules by the same author, this person is a brilliant programmer.
It gives me the heebiejeebies. The first line in the synopsis reads â€œLet the madness beginâ€¦â€ and this review could really end there, because that is exactly what I have to say.
But that wouldnâ€™t be a very helpful review, so Iâ€™ll say whatâ€™s wrong with it. The problem is that there is way too much overloading going on. Just about every operator means something else when used on an IO::All instance as on any other variable in Perl. The meaning of filenames is also overloaded; the result of the code â€œio( "localhost:80" )â€ depends on whether a file called â€œlocalhost:80â€ exists in the current directory, or not. All of this certainly helps brevity, but ask yourself: are you writing production code or competing in an obfuscation contest?
The issue this module tries to address â€“ writing I/O code is awkward and often too verbose â€“ is real, but sorry: this is not the way to go about it.
A wonderful module. Makes dealing with Input and Output very convenient, and concise. Highly recommended. The only problem I found with it was that it has a lot of documentation and it was hard for me to find there what I wanted. (caveat: I contributed a patch to it).
This module is essential -- it improves productivity and code cleanliness. It's wonder for one-liners and is terrific for everyday use.
I don't think a day has gone by since I've discovered this module that I haven't thought about using it somewhere. I seriously hope this becomes part of the standard distribution, it's so damned useful.
A most excellent module. The io('filename')->slurp alone makes it a keeper. Forking network servers in as few as a couple lines of code. This module does it all with a simply elegent interface. I highly recommend it.
2 hidden unhelpful reviews