- cross-posted to:
- fediverse@kbin.social
- cross-posted to:
- fediverse@kbin.social
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.
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 )
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).
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.
Just you wait until your developers learn about the
var
keyword - it’s going to be Python 2.7 PTSD incidents all over again 😂Isnt that already default on all variables? Its like a var(in js)?
Nope, was added to dot Net after the fact. Normally you declare each type by hand, e.g.
ArrayList<int> myCoolList = new ArrayList<int>();
vs
var myCoolList = new ArrayList<int>();
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)
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.
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. 🤣Yeah same ;D But at least its not like in smaller or medium sized python projects where even if its just 2 files its unbearable unpredictable.
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.
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.