363

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.

you are viewing a single comment's thread
view the rest of the comments
[-] TunaLobster@lemmy.world 4 points 11 months ago

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

[-] Rooki@lemmy.world 3 points 11 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@lemmy.beru.co 10 points 11 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).

[-] Rooki@lemmy.world 0 points 11 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@lemmy.beru.co 3 points 11 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 πŸ˜‚

[-] Rooki@lemmy.world 0 points 11 months ago

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

[-] derin@lemmy.beru.co 1 points 11 months ago

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)

[-] Rooki@lemmy.world 1 points 11 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@lemmy.beru.co 2 points 11 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. 🀣

[-] Rooki@lemmy.world 1 points 11 months ago

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.

[-] derin@lemmy.beru.co 1 points 11 months ago
[-] magic_lobster_party@kbin.social 1 points 11 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@lemmy.beru.co 1 points 11 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.

this post was submitted on 23 Jan 2024
363 points (96.7% liked)

Fediverse

28737 readers
297 users here now

A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).

If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!

Rules

Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration), Search Lemmy

founded 2 years ago
MODERATORS