Most of Json/Bson functions are pure in fact, but impure by declaration (missed pure keyword).
This is not a big issue, but I like pure constructors (they can be implicitly casted to immutable) and can't use Json/Bson inside. This makes me sad.