Both, I think.
It’s built in top of Mach, which has some architectural issues that aren’t fixable without a huge amount of work.
And no one’s interested in doing that work because we already have Linux and Linux is fine.
There have been a couple of pretty good post mortems over the years. I think one of them is on gnu.org somewhere.
I haven’t seen that paper before. The ones I remember were blogposts or web pages. In fact, this may be what I was remembering: https://www.gnu.org/software/hurd/faq.html Particularly the part about what happened with the port to different microkernels.
IIRC NeXT and OSX use Mach, but they don’t use it as intended. I think they’re mostly a BSD kernel with Mach functioning as an interface to userspace.
Hurd actually used Mach as a microkernel, and moved most functionality to userspace daemons. This meant that Mach’s performance issues, at least the ones related to IPC, affected the Hurd a lot more than OSX or NeXT.
And yeah, I think developer interest was the biggest thing that held it back.