First off, that made me laugh. :-)
But, it also serves a few very important purposes.
- It's opensource for a reason. Leverage that.
- param() is one of the most complicated methods in CGI, for a reason - it does a gazillion things. Replicating that isn't simple and it shouldn't be seen as simple.
- Lincoln's code is actually quite good. It's the problemspace that sucks. Newbies could do with a worse teacher of style and readability.
- Client bugs suck. There's a ton of code in there to deal with browser incompatibilities. Newbies need to be smacked in the face about that, and often.
There is method to my cruelty.
My criteria for good software:
- Does it work?
- Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
| [reply] |
| [reply] [d/l] |
You know as well as I do that both those complaints (valid as they may be) were done for equally valid reasons. For the edification of the reader ...
- self_or_default() was a design decision that, in hindsight, probably should've been done differently. Breaking backwards compatibility in the core module and providing a wrapper would probably have been a saner solution.
- The hand-rolled autoloading mess is something you won't get Lincoln to apologize for. Until the advent of mod_perl and similar persistent interpreters, anything that could be done to speed up CGI.pm was considered a good thing.
My criteria for good software:
- Does it work?
- Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
| [reply] [d/l] |