Catalyst doesn't enforce you to use discovered "routes." It can discover it from your code (which can be told in several ways) but with Chained and uri_for, you can also set your paths in your configuration file. If you use uri_for the right way, all your links will still work after you reconfigured your paths, without you having to touch the templates, controllers or anything else.
Which is why I thought and said that Catalyst is probably more flexible. It has no "style". You can use the style you need for your application.
Ordinary morality is for ordinary people. -- Aleister Crowley