• maegul (he/they)
    link
    fedilink
    English
    41 year ago

    So … Loved and Brown languages are probably where it’s at.

    Not sure I’m right about this, but according to the article there are only two of these … Python and Scala … which tracks.

    • @sizzling
      link
      English
      31 year ago

      C# is also a loved and brown language. I’ve personally enjoyed working in it the past 9 years and see quite a few ‘legacy’ projects of 10+ years old. These projects do get the occasional refactoring but overall I still see new employees get up to speed with them relatively well.

      It’s nothing amazing but in general pretty pleasant to express yourself in, especially for the more enterprisey projects. I do not really see many people mention it as much in discussion threads though.

    • @[email protected]
      link
      fedilink
      English
      21 year ago

      Can’t speak to Scala, but I would imagine some of that is to do with the fact that despite being around for a long time, Python is constantly being updated and added to. It feels new every release, and it’s wide package ecosystem means there’s always something new and handy to do what you want.

      Other languages of course also evolve but somehow Python threads the needle a little better. No matter how much junk you slap into C++ it still feels old even though you’re using the latest release. I say this as someone who primarily developed with C++ for several years.

      • maegul (he/they)
        link
        fedilink
        English
        21 year ago

        Apart from new packages (which seems like a not insignificant part of it, as you say) … has the core python language really evolved that much over time? The type annotation system would count as a heavy piece of evolution, but other than that I’d guess the roll out of new features hasn’t really transformed the core language over the years … ? Is there a chance that the core language has just aged better over time?

        • @[email protected]
          link
          fedilink
          English
          21 year ago

          Yeah, I’d say barring packages, there’s a couple of other things that go into it:

          1. Core language updates, which are more rare but do happen, like the walrus operator or match case statements, or like you said with typehints (though typehints are somewhat of a combo of multiple things), f strings…
          2. Standard library features, like asyncio, and million other random little things
          3. Language tooling. Python didn’t always have pip and also recently added pyproject as a standard
          • @[email protected]
            link
            fedilink
            English
            21 year ago

            And a possible 4: runtime changes. I suspect this will become more and more apparent and important to the average user, with all the performance updates that have been coming to CPython interpreter

          • maegul (he/they)
            link
            fedilink
            English
            21 year ago

            Yea … all good points … still I’m thinking that the “threading the needle” is in many ways attributable to the core language and design philosophy standing the test of time (so far).

            • @[email protected]
              link
              fedilink
              English
              21 year ago

              For sure; good decisions early about core design and about how to evolve are the foundations on which all else is built.