Put in this way:
- From an abstract view: CGI is a totally different animal than MVC, and it is even not a design pattern, but rather a functinal part of a system.
- From a practical view: I agree that CGI can be used to implement part of the MVC model, especially the V and M. If we are talking about Perl modules, then yes, we can use CGI::Application, even CGI. If you look at what CGI (the perl module) provides you with MVC in your mind, you will quickly realize that:
- It can be used to form view, with methods like start_form, h1 etc. But I would largely prefer templating systems.
- It can be used as part of controller, with methods like cookie etc.
However if the developer or designer has too much CGI in his mind, then most likely he would come up with something does not clearly sepearte M and V.