Skip to content
Documentation for "modern" alternatives to CGI.pm
Perl
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
examples
lib/CGI
t
.gitignore
Changes
MANIFEST
Makefile.PL
README.md

README.md

NAME

CGI::Alternatives - Documentation for alternative solutions to CGI.pm

VERSION

0.03

DESCRIPTION

This module doesn't do anything, it exists solely to document alternatives to the CGI module. This documentation is a work in progress, an example script will be shown in raw CGI.pm and then the equivalent implementation for each alternative will be shown. Resources to further information and documentation will also be included.

BUT WHY?

CGI.pm hasn't been considered good practice for many years, and there have been alternatives available for web development in perl for a long time. Despite this there are still some perl developers that will recommend the use of CGI.pm for web development and prototyping. The two main arguments for the use of CGI.pm, often given by those developers, are no longer true:

1) "CGI.pm is a core module so you don't have install anything extra." This is now incorrect:

    http://perl5.git.perl.org/perl.git/commitdiff/e9fa5a80

If you are doing any serious web development you are going to have to use external dependencies, DBI is not in the core for example.

2) "CGI.pm scripts are shorter and simpler than alternative implementations." Again, not true and the following examples will show that.

PSGI

http://metacpan.org/pod/PSGI

Plack

http://metacpan.org/pod/Plack

Mojolicious

http://metacpan.org/pod/Mojolicious

Dancer

http://metacpan.org/pod/Dancer

Catalyst

http://metacpan.org/pod/Catalyst

Others

https://metacpan.org/search?q=web+frameworks

Dependency Handling

AUTHOR INFORMATION

Lee Johnson - leejo@cpan.org

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Something went wrong with that request. Please try again.