JPEG is getting old long in the tooth, which prompted the creation of JPEG XL, which is a fairly future-proof new compression standard that can compress images to the same file size or smaller than regular JPEG while having massively higher quality.
However, JPEG XL support was removed from Google Chrome based browsers in favor of AVIF, a standalone image compression derived from the AV1 video compression codec that is decidedly not future-proof, having some hard-coded limitations, as well as missing some very nice to have features that JPEG XL offers such as progressive image loading and lower hardware requirements. The result of this is that JPEG XL adoption will be severely hamstrung by Google's decision, which is ultimately pretty lame.
Monopolies don't require 100% of a market. Just enough to effectively manipulate a market.
One firm might only be 10% of a market. But if every other firm is only 1-2%, that 10% will have an outsized monopolistic ability to manipulate that market.
AV1 Image File Format is an open, royalty-free image file format
While I am by no means trying to defend Google, or their monopoly, I'm struggling to see how this time is a "clear example" of monopolistic behaviour?
Like, take for contrast the Moving Picture Experts Group (MPEG) image format HEIC, which Apple has adopted as it's main high-res format on iOS. It's proprietary, and that fact is indeed worrying. However, the only reason I can figure out for Google's move here being a 'bad' thing, is if you're nostalgic about the .jpg extension...
I didn't mean the choice of image format is a monopolistic behavior, but that the monopoly puts google in a position that any choice they make, be it a good or bad one, becomes an industry standard, without others having any choice in it.
Why not just say Rust? There isn't really anything else that would provide good enough performance for a browser engine with modern heavy webpages while also fixing some major pain point of C/C++
Zig didn't come to my mind when I was writing my comment and I agree that it's probably a decent option (the only issue I can think of is its somewhat small community, but that's not a technical issue with the language).
My argument against Go and Java is garbage collection - even if Java's infamous GC pause can apparently be worked around with a specialized JVM, I'm pretty sure it still comes at the cost of higher memory usage and wasted CPU cycles compared to some kind of reference counting or Rust's ownership mechanism (not sure about the proper term for that). And higher memory usage is definitely not something I want to see in my browser, they're hungry enough as is.