Why poll is not replaced with epoll?
poll is much simpler for easy cases; it is probably just as efficient for small numbers of file descriptors. The caller doesn't need to worry about maintaining poll FDs and adding/removing FDs, they can just add all the ones they want on each call to poll.
My feeling is that they are complimentary, although poll COULD be implemented as a wrapper for epoll, it probably shouldn't be.
epoll could (almost) be implemented as a wrapper for poll, but that would defeat its efficiency arguments.