The problem is really that sometimes making something feel ergonomic in a language can be a pain.
Although that in itself might be a hint to change language and write your library there, instead of inventing a new one.