The list of extension tags is stored in an instance variable of the Parser object, and initialzed via the onParserFirstCallInit hook. That means every time a Parser object is constructed, we need to call the hook and re-register every extension tag, and there is no way to get a list of extension tags w/o constructing a parser object.
The list of registered extension tags should be moved into the ExtensionRegistry, the way that Parsoid does it, so that Parsoid doesn't have to create a legacy Parser on startup just to get a list of the registered extension tags.