> Anyway, I think the spelled-out “Synchronous” may be a better name, to
avoid the (very likely) case of people mistakenly reading “Sync” as
short for “Synchronized”. It’s no longer than “ProcessPool”, and,
although it is easy to typo, tab-completion or copy-paste helps, and how
many times do you need to type it anyway? And there will always be more
readers than writers, and it’s more likely the writers will be familiar
with the futures module contents than the readers. And IIRC, this is
the name Scala uses.
> Maybe “Serial” is ok too, but to me that implies serialized on a queue,
probably using a single background thread. That’s the naming used in the
third-party C++ and ObjC libs I’ve used most recently, and it may be
more common than that—but it may not, in which case my reading may be
idiosyncratic and not worth worrying about.
FWIW, I'm also in favor of SynchronousExecutor. I find that the term "Serial" has a bit too many definitions depending on the context; whereas "Synchronous" is very clear as to the behavior and purpose of the executor. I'd rather the class name to be excessively verbose and more immediately obvious as to what it does; rather than shorter to type and a bit ambiguous.