That's why I don't use .pl or any CGI like software.
I think that URLs must describe their content, not the program used to manage it, SO I use modperl directly, or HTML::Mason, with dhandlers, that allow me to have virtual URLs, that I then map to my database information.
The future (being finished) of my bliki system, Mabliki, uses a urification of the post titles on the URLs, that have the form /view/some-special-interest-item.html.
This is a virtual cached URL, that say nothing about the software used or the language I use, only about the action I 'm doing (viewing some-special-interest-item).
I think there are several reason to use this type of URLs, including compatibility and SEO. URLS like parent=23421;node_id=2342345 say nothing about the content, and even when a user is looking in history for some story he liked it don't work.
mod_rewrite is a good way to transform URLs if you can't have natively good URLs. ModPerl have several ways to map URLs, so I don't think that you need another way to map them.
You just need another way to think web devel in Perl.
CGI, I think, is not an option. Even in a Perl::Registry environment.