I also personally think CUE hits a sweet spot. The union (pun intended) between types and values (both sets) is really a game changer!
CUE is indeed not trivial to implement, especially its intricate semantics are tricky. I work an a CUE alternative, called ReSeT to really understand the semantics better.
See: https://old.reddit.com/r/ProgrammingLanguages/comments/uukxv...