when I started writting PureMVC Perl implementation, i used a bank use-case to validate my dev and quickly realised server-side version missed the ability (compared to client-side version) to have its Commands-Mediators-Proxies registrations changed between 2 user-requests.
In an AS3 PureMVC app, a user interaction can lead to a Command execution that will register/remove another Command for instance, making app business behaviour evolve depending on the way the client (the outer world) interacts with the app.
In a Perl (or PHP, Python, Ruby, ...) PureMVC app, 2 separate app invokations will rerun the PureMVC structure "from scratch", not allowing the registration/removal of Commands-Mediators-Proxies between the 2 runs.
In one sentence, server-side PureMVC lacks "business statefulness" compared to client-side PureMVC.
To give a simple example related to my bank experience, it would be convenient for a server-side app administrator to send a request saying "please stop SWIFT files integration until further notice". This request would unsubscribe SwiftFileCommand for the next app invokations.