Andreas Kling aka @awesomekling wrote:

We’ve been evaluating a number of C++ successor languages for @ladybirdbrowser , and the one best suited to our needs appears to be @SwiftLang 🪶

Over the last few months, I’ve asked a bunch of folks to pick some little part of our project and try rewriting it in the different languages we were evaluating. The feedback was very clear: everyone preferred Swift!

Why do we like Swift?

First off, Swift has both memory & data race safety (as of v6). It’s also a modern language with solid ergonomics.

Something that matters to us a lot is OO. Web specs & browser internals tend to be highly object-oriented, and life is easier when you can model specs closely in your code. Swift has first-class OO support, in many ways even nicer than C++.

The Swift team is also investing heavily in C++ interop, which means there’s a real path to incremental adoption, not just gigantic rewrites.

Strong ties to Apple?

Swift has historically been strongly tied to Apple and their platforms, but in the last year, there’s been a push for “swiftlang” to become more independent. (It’s now in a separate GitHub org, no longer in “apple”, for example).

Support for non-Apple platforms is also improving, as is the support for other, LSP-based development environments.

What happens next?

We aren’t able to start using it just yet, as the current release of Swift ships with a version of Clang that’s too old to grok our existing C++ codebase. But when Swift 6 comes out of beta this fall, we will begin using it!

No language is perfect, and there are a lot of things here that we don’t know yet. I’m not aware of anyone doing browser engine stuff in Swift before, so we’ll probably end up with feedback for the Swift team as well.

I’m super excited about this! We must steer Ladybird towards memory safety, and the first step is selecting a successor language that we can begin adopting very soon. 🤓🐞

  • LeFantome
    link
    fedilink
    arrow-up
    1
    arrow-down
    3
    ·
    edit-2
    3 months ago

    This is literally the text from one of the links above that assert that Andreas is a fascist:

    “I’m doing my best to build something I believe in, and everyone is welcome to participate as long as we can set our differences aside. 🤓

    I cannot imagine how lopsided your world-view needs to be to interpret this kind of neutrality as “fascist”.

    The only conclusion that I can draw is that some people are so polarized ( black and white ) that they can only interpret people that are not “with” them as “against” them.

    And to clarify “with” above means “shares my extreme views and expectations”.

    If that is true, it is tragically sad.

    • mke@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      edit-2
      3 months ago

      Where did you read me state he’s a fascist, when I literally said the opposite?

      I genuinely don’t think he’s on Twitter because he’s a “weird fascist tech bro”

      And I explained, in depth, why we can’t simply reduce who someone is to their words. You need to look at their actions. Saying “look at his sweet message! How can anyone think ill of him?” is not the argument you think it is. From history books to modern media, we know countless people whose words are nice, when their actions are anything but.

      they can only interpret people that are not “with” them as “against” them.

      And to clarify “with” above means “shares my extreme views and expectations”.

      Can you tell me exactly which extreme views and expectations I expressed?

      I’ll be blunt, it doesn’t look like you bothered to read my entire comment before replying.

      P.S. Twitter uses their own set of emoji that are actually images instead of Unicode, and it seems you pasted the image in your comment. I suggest replacing it for 🤓 or removing it, because it’s likely oversized in some Lemmy UIs.