It absolutely depends on what are you trying to accomplish. Are you only printing a single line? Don't you really need a CGI parameter processing? Oh you said only one numeric parameter. Are you sure the user will ever only type in that numeric input? Do you really trust that? Don't you ever worry that the user will indeed just fill in the parameter with whatever pleases him/her, say a 5MB beast of something?
My simple rule of thumbs for web application:
- If it's a simple script and I need it quickly, CGI is my not so secret weapon. I use its header(), param(), and html-related methods.
- If it's a complex application, I use CGI::Simple. Why? Because it shares (well, it reuses) the same code for header, cookie, and param processing (to name a few) codes. I don't need any html-related methods from CGI, I use HTML template for that purpose. So CGI::Simple just fits to what I need.