Except that it can have side effects, can't it - it can trigger services, cause stuff to be changed in a datastore. It doesn't have any local stateful storage, but it can make use of remote state. In that respect, how is it different from basically any web request processor?