Found this gem. A single well made video in a channel. The Channel owner probably made this channel just to house one video I guess.

I havent watched it all the way through but it seems to have alot of substance. By the looks of it the guy probably has spent atleast a year developing professionally in C++ and is pretty pissed to make that video as a ventfest

See if you cant agree with something he said

  • namingthingsiseasy@programming.dev
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    13 days ago

    Sure, I’m familiar with the conditions under which Javascript was created, but those are all political issues, not technical ones.

    If you had to go back and recreate another C++, you would be forgiven for creating a bad language, because making a good, usable language without a garbage collector is really hard, and even moreso when it has to be compatible with C. If you had to recreate Javascript… I would think it would be expected that you don’t make a language with the same kinds of flaws JS has today. There were plenty of examples of languages Javascript could have been based off of when it was written (like Java).

    Case in point: it took decades for Rust to come around which was the first real challenge to C++. In the same period of time, we saw several GC languages appear (Java, C#, Go, PHP, Swift, Ruby, Python, all younger than C++), all competing against each other. Javascript would have been abandoned if it didn’t have a monopoly on web programming.

      • namingthingsiseasy@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        2 days ago

        Ease of adoption, if I’m not mistaken (so I was told 20-ish years ago when I started learning C++). Think back to the early/mid '90s - there was a lot of existing C code out there back then, people really didn’t want to throw it away but had few options if they wanted to use something else. C compatibility offered a way for large companies to incrementally adopt C++. All you had to do was change your compiler and your existing C code would compile, and you could write new stuff in C++. In the mean time, other languages could only leverage that existing code by using message passing or FFI-like frameworks. For example, you would have to use JNI if you were writing Java I think - maybe there were other options, but it was a big pain to deal with at the time, especially since tooling was probably not as polished back then.

        Maybe it’s not as much of an issue today, but they have to maintain compatibility with earlier versions, so while it helped adoption a lot, it also is a big challenge for the language and its ability to move forward.