Every web application needs to fill in HTML <form>s at some point. Simple text <input>s and <textarea>s are easy to do. But radio buttons, checkboxes and <select>s are a bit harder.
I love HTML::FillInForm because each form <input> is treated the same. It doesn't matter if the designer wants to change from a <select> box to radio boxes, or replace it with a text <input>. The code that fills it doesn't change.
But stuff. That's gotta be slow, right?
So, to see how slow I decided to benchmark it (against HTML::Template::Expr). Here's the results (code benchmarked is at the bottom):
With small, fairly simple forms, and using external files so H::T::E could cache -
For 1000 iterations:
Rate hte fif hte 1493/s -- -7% fif 1613/s 8% --
Rate fif hte fif 1075/s -- -11% hte 1205/s 12% --