• spartanatreyu@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      2 hours ago

      But… JavaScript also exists so like… ?

      Yeah, but JS is more of a compile target than a language now since most JS devs are really TS devs.

      Also, JS (the language) has some killer features, like executing while still downloading, and rock solid backwards compatibility.

  • onlinepersona@programming.dev
    link
    fedilink
    English
    arrow-up
    15
    ·
    16 hours ago

    So yes, C++ is a terrible language. Now fire up your terrible IDE and get back to coding in the worst programming language in the entire world!

    No thank you. I’ve moved on long ago and welcome the abilities that rust provides. Since I’m not a game developer who needs to “move fast and break things”, which C++ is not even good at btw (well the moving fast part), there is no reason to use or get accommodated with C++ again. I think I’d even rather write PHP than C++ at this point.

    • MyNameIsRichard@lemmy.ml
      link
      fedilink
      arrow-up
      20
      ·
      15 hours ago

      I think I’d even rather write PHP than C++ at this point.

      You can get professional help for that these days!

      • spartanatreyu@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        1 hour ago

        Modern PHP is basically a different language than the horrors of php 3-4.

        It has:

        • traits
        • pattern matching
        • named parameters (so you never have to pass in a null anywhere just to skip a parameter in a function that someone else defined)
        • references (like smart pointers so you can pass by reference instead of value, but it prevents you from seeing the actual memory address to stop people trying to do math on pointers and ending up with bugs)
        • SensitiveParameter (a way to make a value as this needs to be hidden for security purposes, so attackers can’t leak passwords in stack traces by causing crashes)
        • etc…

        That said, there’s still some remnants of the horrors…

        • Its god awful API.
          • Example, if you wanted to do something with a string, you can’t type the string then . and see a list of functions/methods to use on it. Nor can you call a general String. and see autocompleted things. No, instead every single method that is used for string manipulation has a different name that doesn’t include the word string at all. And the names are completely inconsistent. You just have to memorise an entire textbook of invocations to do the one simple thing you want to do.
          • There was work to fix the naming inconsistency, but the proposal’s been dead for years. If you want to see the horrors it would have fixed you can check: https://wiki.php.net/rfc/consistent_function_names#list_of_functions_to_be_renamed
        • Way too much OOP
          • Want to make a simple data structure? Too bad, type out 100 lines and make an object instead.
          • There’s just way too much boiler plate.