Mostly because the standard emscripten docker image does not have libjson-perl, but python always comes with json. But also because it was impenetrable.