The main problem with Windows is the lack of epoll-compatible high-performance socket API. It has something called IO Completion Port API but it is quite different from respective #nix APIs and for that reason it is very hard to wrap it into something that resembles epoll/kqueue/etc interface. This in turn means that platform abstraction cannot be done at the socket API level and needs to be pushed higher up.
Many #nix devs would find the very idea of such effort repulsive -- their light and elegant code suddenly needs to be mangled and obfuscated with unnecessary abstractions to support that godawful operating system. And I can't say I can blame them.
Many #nix devs would find the very idea of such effort repulsive -- their light and elegant code suddenly needs to be mangled and obfuscated with unnecessary abstractions to support that godawful operating system. And I can't say I can blame them.