Comment by JimDabell

14 hours ago

> there are only three platforms: Blink/V8; WebKit/JavaScriptCore; and Geko/SpiderMonkey.

You’re misunderstanding the terminology here. The platform being talked about is the World-Wide Web and you are listing three implementations of the client part of the platform.

You are the one misunderstanding my point.

There ARE ONLY THREE implementations of the client platform.

I would like for there to be a hundred, and there would be if the platform was simpler, but its not, so there won't.

  • I think you have the causality incorrect. There aren't fewer implementations because the standard is complicated; the standard is the product of the browser wars, when well-resourced browser implementors differentiated themselves by adding behavior to anemic/underspecified standards. Browser vendors did, to their credit, co-operatively add a lot of common/similar behavior and then work to standardize it--that's healthy standards growth. But a lot of the size of the standard is because they all wanted to add different capabilities to entice users.

    A standard that's the product of feature competition between pre-existing nonstandardized behaviors is doomed to be huge. See also: AMQP, C++.

    • The browser wars are long gone, and there is no technical reason why the standards each browser added had to be complex per-use-case builtins instead of composable primitives.

      In any case, that is what happened.

      And now new projects like Ladybird take a decade to arrive, even with AI, because of the immense amount of stuff in the platform.

      > standard that's the product of feature competition between pre-existing nonstandardized behaviors is doomed to be huge.

      None of the Unixes are this bloated.

      2 replies →