use Catalyst qw/ PLUGIN1 PLUGIN2 PLUGIN3 ... /; #### use Moose; extends 'Catalyst::Controller'; # normal # vs... extends 'Catalyst::Controller::REST'; # changes behavior of things #### sub begin :SOME_MAGIC_ATTRIBUTE {} #### sub begin { my ($self, $c)= @_; if ($c->req->method ne 'GET') { $c->res->code(404); $c->detch; } #### package MyApp::Controller::Root; sub begin { ... }