And probably would never do. It isn't its job description. [...] The idea is to have one software package that does one defined set of functions really well, as not to complicate things by lumping everything together. Delivering mail is a generally complex process that needs a separate expertise than storing/indexing/accessing email messages. [...] I didn't know about BURL, thanks. Looks interesting. I am sometimes really annoyed by double upload when sending big files. I wonder if my mail clients support this... need to check. Maybe then I'll configure dovecot sumbission just for BURL sake.
You have realised just now how the Unix philosophy can easily break down. The BURL case makes it clear that strict separation does not fit the bill in this case. Separating mail storage from sieve/filtering from sending (MTA) etc. creates integration costs and data duplication.
Sometimes I wonder whether it would not be better to have an integrated mail server that knows how to send, receive, filter and store e-mail. Like a database server, that not only knows how to store, index, query and replicate data, but can also run stored procedures that have access to all features (over an internal API) and can run anything at all, including running external tools. Or even like Microsoft Access, where you can do all that plus even code a GUI. The Emacs of Mail. 8-)
Regards, rdiez