Comment by philipwhiuk

21 hours ago

> cool modern features like multi-threading

Java 6 had multi-threading

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?

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...

I think they are being sarcastic because the vanilla Minecraft server is heavily single threaded.

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