Last time I checked it out it depended on JS-specific behaviour which had to be replicated in other languages. It seemed like something was written first, and then they decided to extract it into a spec.
Maybe this has been cleaned up in the interim, but at the time a bunch of apps for it already existed so it was probably to late to go back.
That, and the insistence on 1-1 device:identity mapping (so you can't use the same account with multiple devices). And verifying an append-only log, so "show me Jane's recent posts" can't happen until it's downloaded & verified signatures for Jane's entire post history going back years.
Maybe this has been cleaned up in the interim, but at the time a bunch of apps for it already existed so it was probably to late to go back.