Re: Re: Re: Re: Re: Ingy's "Swiss Army Light Sabre" - or, "how do you design your APIs?"by stvn (Monsignor)
|on Mar 24, 2004 at 15:11 UTC||Need Help??|
You expected something to work, and it didn't, because of the circumstance.
The > operator is kind of difficult since it is really meant to be used in a boolean comparison. Perl will usually issue a warning if it is used in a void context (which makes sense). I had actually implemented both the > & >> operators in a file class I wrote once, and I found myself writing code like this to avoid warnings.
Its a little overkill, but the project requirements actually dictated this level of strictness so it worked out.
IO::All actually catches the warnings, and dismisses them:
Which IMHO is kinda dangerous as it hides real warnings too. But hey, TIMTOWTDI i suppose.
In the end, Perl's overloading is great, but is somewhat limited in the sense that the original "intention" of the operator is somewhat retained. Of course, you could also view this as a good thing, as it prevents people from doing really weird stuff.
I have to say, I like both the '>' and '>>' operators - they work just like in the shell, pretty much. '>>' is also a bit C++-ish. But, maybe it's just my brane.
Nah, its what coding in C++ has done to your brain, its not your fault. ;-)-stvn