Hacker News new | ask | show | jobs
by philipwhiuk 608 days ago
> cool modern features like multi-threading

Java 6 had multi-threading

5 comments

The limitation isn't the Java version, it's the way the MC code was architected.

Iirc part of original Minecraft's performance limitations were high object create/destroy rate leading to lots of garbage collection. With that in mind, picking a non-GCd language isn't completely crazy.

It was the other way around: say, the original code as written by Notch had functions like setPosition(x,y,z) and it was okay. When Jeb got in charge, he said "it's not object-oriented enough" and rewrote everything to setPosition(position). And boom, 1GB/sec allocations...
How horrifying!
I'm just saying, there's nothing "modern" about multi-threading.
I think they are being sarcastic because the vanilla Minecraft server is heavily single threaded.
While Java does, the Minecraft server architecture does not.
java 1.0 (even 0.9) did have. The 1st language with a memory model was java 5 (1.5), which was back ported to 1.4.2. 1.4(.2) already had non-blocking I/O as well.

Why pick 6, though?

I just picked an old enough version that I knew had it and the original Minecraft could have chosen to use.

(I've never written pre Java 6 code)

I read this in the most satirical way possible like as if a godly narrator said it calmly.

It was really funny. It felt like a Satire LMAO