in reply to Re^2: Help choosing the most efficient, dependable condition(al)
in thread Help choosing the most efficient, dependable condition(al)
But isn't using/requiring a Module a bit overkill?
HTTP::Negotiate has passed smoke testing on 4244 systems, and failed on one, which was probably misconfigured. Those systems include Perl versions from 5.8.1 through 5.19.6, on operating systems including Window (cygwin), Mac, DragonflyBSD, FreeBSD, GNU Hurd, Debian, Haiku, GNU Linux, MidnightBSD, MirOS BSD, Win32, NetBSD, QNX Neutrino, OpenBSD, and Sun/Solaris. It is used in production, probably in many instances. Its test suite, while minimal, exists, and works.
HTTP::Negotiate "...provides a complete implementation of the HTTP content negotiation algorithm specified in draft-ietf-http-v11-spec-00.ps chapter 12." And it's been around since 1996. It currently has one bug report in its RT, relating to a typo in the POD. It has POD.
You have an if statement with a fragile regular expression. ...I'm sorry, what was your question again? ;)
I mean, doesn't perl already provide sufficient method(s) to accomplish such goals?
Yes. HTTP::Negotiate is written in pure-Perl. Perl is capable of facilitating the implementation of standards compliant HTTP negotiation. Your code doesn't do that.
When the phone rings, I want to pick up a device that I can push the "answer" button on, hold to my ear, and hear the caller's voice. I don't want to pick up a heap of wires and chips on a breadboard and hold my hand to a grounding plate with a crystal earphone from radio shack in my ear. Well, maybe if I'm in a "hobby" mood I do. But when I want it to work reliably, I use the well tested, well engineered device, not the cobbled apparatus.
Programmers love to program, just like salespeople love to talk. Sometimes we have to temper that with a splash of Perlish lazyness.
Dave
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Help choosing the most efficient, dependable condition(al)
by taint (Chaplain) on Nov 14, 2013 at 02:07 UTC |