Seems like an interesting effort. A developer is building an alternative Java-based backend to Lemmy’s Rust-based one, with the goal of building in a handful of different features. The dev is looking at using this compatibility to migrate their instance over to the new platform, while allowing the community to use their apps of choice.

  • @TunaLobster
    link
    English
    410 months ago

    Really? I find python imports to work very similar to cpp in practice.

    • @RookiA
      link
      English
      310 months ago

      But you really dont see what the function wants or requires or returns ( except with typehints, but they dont work most of the time and then its not enforced in any way )

      • Derin
        link
        fedilink
        English
        1010 months ago

        Larger, modern python projects always use type hints, for this specific reason.

        In the past you had PyDoc, which also scratched that itch.

        Barring that, contributing to a python project is very difficult without an IDE that performs type checks for you (which is unreliable).

        • @RookiA
          link
          English
          010 months ago

          Correct! As i already contributing to a big ass python project at work. We will rewrite a Big Project from python to c# in under 1 month.

          • Derin
            link
            fedilink
            English
            310 months ago

            Just you wait until your developers learn about the var keyword - it’s going to be Python 2.7 PTSD incidents all over again 😂

            • @RookiA
              link
              English
              010 months ago

              Isnt that already default on all variables? Its like a var(in js)?

              • Derin
                link
                fedilink
                English
                110 months ago

                Nope, was added to dot Net after the fact. Normally you declare each type by hand, e.g.

                ArrayList myCoolList = new ArrayList();

                vs

                var myCoolList = new ArrayList();

                The second example is why the keyword was added, but now imagine you have a function call returning an unknown type, and then things will start to get super funky.

                E.g.

                var myCoolBook = BuildBookData(input);

                …one step forward and then the same step back 😂 (disclaimer: I do actually like C#, though)

                • @RookiA
                  link
                  English
                  110 months ago

                  Ahh you mean the implementation of var in other langauges than python, i missunderstood you there! Yeah var is a bit risky to use in that case, same i like c# too! Its pretty reliable and stable.

                  • Derin
                    link
                    fedilink
                    English
                    210 months ago

                    Yep, I was specifically talking about C#'s implementation.

                    I worked with some large C# code bases, and you could always see the point in time in which an individual developer would finally get comfortable with var - it’s when the code would start getting unreadable. 🤣

                • magic_lobster_party
                  link
                  fedilink
                  110 months ago

                  The good thing about the var keyword is that it’s still statically typed. The IDE can figure out the type for you if you hover over it.

                  • Derin
                    link
                    fedilink
                    English
                    110 months ago

                    But what happens if you don’t use an IDE? That was the original point. Even if it isn’t statically typed, a python IDE can also do its best to guess the type of an object.

                    The point is to have code that’s legible without dependence on large, third party tools.